MrChoke.Org

Category: Pidgin

รู MediaWiki

ติดตั้ง MediaWiki ตัวล่าสุดไว้ยังไม่ได้ทำอะไรเลยโดนยิงร่วงไปหนึ่งครั้ง อะลงใหม่ก็ได้ว่ะ… Set ปิดไว้ไม่ให้ใครเขียนใครอ่าน อ้าวชั่วข้ามคืนนอนตื่นขึ้นมา โดนยิงร่วงไปอีกไรฟระเนี๊ย….. อาการก็คืนมันเขียน index.php ใหม่ซะงั้นขาย Sex ซะแต่บังเอิญเป็น php เลย error เท่าที่อ่านไอ้ตัวล่าสุดมันเนี๊ยะแหละที่ออกมาแก้ปัญหานี้แต่ไหงยังโดนอยู่ฟร่ะ… ยังไม่ได้หาวิธีแก้เลย ใครคิดจะใช้ก็หาวิธีแก้ด้วยเด้อ… ปวดหมอง…วัยรุ่นเซ็ง

Drupal + MediaWiki

หลายท่านที่ชื่นชอบความสามารถของ Drupal แต่ก็ยังรัก MediaWiki วันนี้ผมขอเล่าวิธีการใช้ Users ร่วมกันระหว่างสองตัวนี้ จริงๆ ก็มีทางออกหลายอย่างนะครับสำหรับคนที่อยากใช้ Drupal กับ Wiki ผมแอบเห็นคนทำ Profile การติดตั้ง Drupal 5 ให้ทำงานคล้ายคลึง Wiki แต่ผมก็ไม่ได้ลองนะครับแค่ไล่ๆ ดูเพราะหาวิธีที่จะ Link สองตัวนี้เข้าด้วยกันมานานแล้ว วันนี้ไปเจอเข้าเป็นวิธีกลางๆ คือใช้แค่ Users ร่วมกัน สำหรับผมแค่นี้ก็พอแล้วละไม่ต้อง login หลายครั้งให้ยุ่งอยาก ระหว่างรอให้ OpenTLE ฟื้นคืนชีพเพื่อใช้งานจริงก็มาซ้อมมือเขียนวิธีการคร่าวๆ ไว้ก่อน ถ้าใครอ่านภาษาอังกฤษคล่องก็อ่านจากต้นฉบับได้เลยนะครับเพราะผมอาจจะเขียนอ่านไม่รู้เรื่องก็เป็นได้ตอนนี้ก็เกือบ 7 โมงเช้าแล้วยังไม่ได้หลับ มาเริ่มกันเลยดีกว่าครับ

Software ที่ผมใช้ในครั้งนี้

ขั้นแรก ให้ทำการติดตั้ง Drupal และ MediaWiki ให้เรียบร้อยตามวิธีของทั้งสองเมื่อติดตั้งเรียบร้อยแล้วให้ท่านนำ AuthDrupal Module (Download ) เก็บไว้ใน Directory modules ของ Drupal และ extentions ของ MediaWiki โดยแฟ้มต่างๆ ดังนี้

 

การแก้ไขและปรับแต่งค่า

  • ให้ทำการแก้ไขแฟ้ม crypto.php โดยใส่ค่า $key ให้ตรงกับค่า $wgProxyKey ของ MediaWiki ซึ่งจะอยู่ในแฟ้ม LocalSettings.php สิ่งที่ต้องระวังคือต้องแก้แฟ้มนี้ทั้งใน Drupal และ MediaWiki
  • ให้ทำการแก้แฟ้ม Mediawiki.module โดยตั้งค่าตัวแปรต่อไปนี้ให้ตรงกับค่าในแฟ้ม LocalSettings.php
    	wgCookieDomain , wgDBname และ wgDBprefix
    	

    โดยปกติแล้วค่า wgCookieDomain จะไม่มีใน LocalSettings.php ต้องใส่เข้าไปเอง

  • ให้ปรับแต่งค่าต่อไปนี้ในแฟ้ม LocalSettings.php เพิ่มเติม

    	//ปิดการสร้าง Users ทางฝั่ง MediaWiki
    	$wgGroupPermissions['*']['createaccount'] = false;
    	//ในกรณีที่ใช้ Database คนละตัวกัน ให้ใช้ true
    	$wgAuthDrupal_UseExtDatabase = true;
    	//กำหนดค่า database ของ Drupal
    	$wgAuthDrupal_MySQL_Host     = $wgDBserver;      // MySQL host ของ Drupal
    	$wgAuthDrupal_MySQL_Username = $wgDBuser;        // MySQL Username ของ Drupal
    	$wgAuthDrupal_MySQL_Password = $wgDBpassword;    // MySQL Password ของ Drupal 
    	$wgAuthDrupal_MySQL_Database = 'drpl';           // MySQL Database ของ Drupal
    	// ถ้ามีการกำหนดค่า TablePrefix ของ Drupal ก็ให้แก้ให้ตรงกัน ส่วน Table users ก็ไม่ต้องแก้เพราะเหมือนกันอยู่แล้ว
    	$wgAuthDrupal_TablePrefix       = "";
    	$wgAuthDrupal_UserTable     = 'users';
    	// ถ้ามีการกำหนดค่า Profile ใน Drupal และมี fields ชื่อกับนามสกุล โดยมีชื่อ field 
    	// profile_first_name และ profile_last_name ก็สามารถใช้ร่วมกันได้ 
    	// แต่เท่าที่ลองภาษาไทยจะใช้ไม่ได้ ถ้าท่านกำหนดค่า database เป็น utf8 แบบเข้ากันได้กับรุ่นเก่า
    	// ถ้าจะให้อ่านไทยได้ก็ต้องใช้ utf8 แบบใหม่ครับ
    	// ถ้ากำหนดข้างต้นไว้แล้วก็ให้เปิด true ในค่านี้
    	$wgAuthDrupal_GetRealNames = true;
    	//สำหรับท่านที่ตั้งค่า fields ไม่ตรงกับที่กำหนดก็สามารถระบุให้ได้ด้วยตัวแปรนี้
    	$wgAuthDrupal_RealNames_first_name_field  = 'your field name';
    	$wgAuthDrupal_RealNames_last_name_field  = 'your field name';
    	// ตั้งค่าให้ Drupal เป็นตัวจัดการเรื่อง login / logout แทน MediaWiki
    	$wgAuthDrupal_ReplaceLogin = true;
    	//ถ้ากำหนดด้านบนเป็น true ก็ต้องกำหนดค่าหน้า login และ หน้า logout ด้วย
    	$wgAuthDrupal_LoginURL = 'http://yourdomain.com/user/login';
    	$wgAuthDrupal_LogoutURL = 'http://yourdomain.com/logout';
    	//และสุดท้ายคือเปิดใช้ extention นี้ให้กับ MediaWiki
    	require_once 'extensions/AuthDrupal/AuthDrupal.php';
    	SetupAuthDrupal();
    	
  • ไปยัง Drupal เพื่อทำการเปิดใช้ module

ที่มา: http://www.mediawiki.org/wiki/AuthDrupal

 

Copyright © 2016 MrChoke.Org

Theme by Anders NorenUp ↑