การติดตั้ง Dokuwiki

header_dokuwiki

Dokuwiki ซอฟต์แวร์สำหรับการสร้างแหล่งความรู้แบบออนไลน์โดยผู้ใช้มีส่วนร่วมในการสร้างสรรค์เนื้อหาหรือองค์ความรู้ Dokuwiki ถูกพัฒนาขึ้นมาโดยภาษา PHP และใช้การเก็บข้อมูลเนื้อหาไว้ในไฟล์ข้อความ (Text file) ดังนั้นการติดตั้ง Dokuwiki ไว้ในคอมพิวเตอร์ Server ที่ใช้ในการทำงานจะต้องมีความสามารถในการรองรับการทำงานร่วมกับภาษา PHP ในปัจจุบัน Dokuwiki สามาทำงานได้ร่วมกับซอฟต์แวร์ Webserver ได้หลายตัวทั้ง Apache, Lighttpd, Nanoweb, IIS, nginx ฯลฯ โดยในการสาธิตการติดตั้งครั้งนี้จะทำการสาธิตการติดตั้ง Dokuwiki ภายใต้ซอฟต์แวร์ Webserver Apache ที่อยู่ในชุดติดตั้งซอฟต์แวร์แพ็กเก็จ Appserv เวอร์ชัน 2.5.10 ในระบบปฏิบัติการ Windows 7 32 bits.

สิ่งที่ต้องเตรียมพร้อมก่อนการติดตั้ง

  • ซอฟต์แวร์แพ็กเก็จ Appserv (Apache+php+MySQL+phpMyAdmin)
  • Dokuwiki ในการติดตั้งครั้งนี้ใช้เวอร์ชันที่ถูกปล่อยให้ดาวน์โหลดตั้งแต่วันที่ 2013-12-08 ชื่อรหัส “Binky”

1. เริ่มต้นโดยการดาวน์โหลดซอฟต์แวร์ Dokuwiki จากเว็บไซต์ผู้พัฒนา กดปุ่ม Download ที่ปรากฏบนหน้าเว็บไซต์

Picture1

2. เมื่อดาวน์โหลดซอฟต์แวร์เสร็จ ให้ทำการขยายไฟล์ (Extract FIle) ที่ได้นั้นไปยัง Directory ของ Appserv ภายใต้ C:\Appserv\www\

Picture2

3. เริ่มต้นติดตั้ง Dokuwiki โดยเข้าผ่าน URL http://localhost/dokuwiki/instaill.php ในหน้า Install.php จะเป็นหน้าจอสำหรับการกรอกรายละเอียดตั้งค่าระบบเริ่มต้นโดยมีรายละเอียดดังต่อไปนี้

Picture3

4. Wikiname : ชื่อแหล่งเรียนรู้
Superuser : Username ของผู้ดูแลระบบ
Realname : ชื่อของผู้ดูแลระบบ
E-mail : อีเมล์ผู้ดูแลระบบ
Password : รหัสผ่านผู้ดูแลระบบ และกรอกอีกครั้งในช่อง once again
Initial ACL policy:นโยบายการเข้าใช้งานระบบ wiki โดยกำหนดสิทธิ์ตามวัตถุประสงค์ของการติดตั้ง
Open เป็นสิทธิ์ให้ผู้ใช้ทั่วไปสามารถเขียน/อ่าน/อัพโหลด ได้
Public เป็นสิทธิ์ให้ผู้ใช้ทั่วไปสามารถเขียน/อ่าน/แต่ผู้ใช้ที่เป็นสมาชิกของระบบเท่านั้นจึงสามารถอัพโหลดรูปได้
Closed ผู้ใช้ที่เป็นสมาชิกเท่านั้นจึงสามารถเข้าถึงส่วนต่างๆ ของระบบ wiki ได้

Picture4

5. เลือกสัญญาอนุญาตการเข้าถึงข้อมูลในคลังความรู้ โดยค่าปกติจะถูกกำหนดเป็นแบบ CC Attribution-share-alike 3.0 Unported
ขั้นตอนสุดท้าย กด Save เพื่อบันทึกการตั้งค่า จากนั้นจะปรากฏหน้าจอแจ้งเตือนเมื่อการตั้งค่าเสร็จสิ้น และระบบจะแจ้งให้ลบไฟล์ Install.php

Picture5

6. เมื่อบันทึกการตั้งค่าระบบเสร็จสิ้น จากนั้นให้ลบไฟล์ install.php ในภายใน Directory C:\Appserv\www\dokuwiki\ ออกเพื่อป้องกันการติดตั้งซ้ำ

Picture7

7. เมื่อลบไฟล์ Install.php ออกแล้วสามารถเริ่มต้นใช้งานซอฟต์แวร์ Dokuwiki ได้ผ่าน URL http://localhost/dokuwiki

Picture8

 

8. ข้อแนะนำ

Picture9

ในกรณีที่เกิดการแจ้งเตือนข้อผิดพลาดเมื่อเริ่มต้นการใช้งาน Dokuwiki ดังภาพ สาเหตุของปัญหาเกิดขึ้นมาจากการใช้ Appserv ในเวอร์ชันที่สูงกว่า 2.5.10 ซึ่งในเวอร์ชันตั้งแต่ 2.6.0 ขึ้นไปจะใช้ PHP เวอร์ชัน 6 ซึ่งไม่รองรับฟังก์ชัน get_magic_quotes_gpc() ใน Dokuwiki

ปัญหาการแจ้งเตือน PHP Fatal error:  Call to undefined method com::GetRandom() ซึ่งสามาเหตุมาจากระบบปฏิบัติการ Windows ที่ใช้อยู่ไม่มี library capicom.dll ดังนั้นจึงต้องทำการติดตั้งและเพิ่มเติมโดยดาวน์โหลด lIbrary ได้จาก http://www.microsoft.com/en-us/download/confirmation.aspx?id=25281 หลังจากติดตั้ง library เสร็จให้ทำการ register โดยใช้คำสั่ง regsvr32 “C:\Program Files\Microsoft CAPICOM 2.1.0.2 SDK\Lib\X86\capicom.dll“ ผ่าน Windows command line

9. ความปลอดภัยหลังจากติดตั้ง Dokuwiki

Dokuwikiใช้การเก็บข้อมูลในรูปแบบของไฟล์ข้อมูล (Text File) โดยแต่ละหัวข้อเรื่องจะถูกจัดเก็บไว้ในไฟล์ 1 ไฟล์ ดังนั้นหากไม่มีการจำกัดสิทธิ์ในการเข้าถึงจะทำให้สามารถเรียกดูข้อมูลได้โดยตรงผ่าน URL เช่นการเรียกดูหน้า Welcome สามารถเรียกดูได้ผ่าน ../dokuwiki/data/pages/wiki/welcome.txt

Picture10

การแก้ไขปัญหาดังกล่าวทำได้โดยการสร้างไฟล์ .htaccess ไว้ในแต่ directory ที่เก็บข้อมูลสำคัญได้แก่ data, conf, bin และ inc ซึ่งโดยปกติจะมีไฟล์นี้อยู่แล้วในแต่ละ directory แต่หากพบว่ายังสามารถเข้าถึงข้อมูลของ text file ได้โดยตรง จากการทดสอบได้ลองเปลี่ยน chmod ของ directory /data/ ให้เป็น 750 เพื่อกำหนดสิทธิ์ให้เฉพาะการอ่าน / เขียน เพื่อการประมวลผลเท่านั้น และผลลัพธ์จะทำให้การเข้าถึงโดยตรงถูกปิดกั้น

Picture11 Picture12

รายละเอียดเพิ่มเติมของการตั้งค่าความปลอดภัยสามารถอ่านเพิ่มเติมได้ที่

https://www.dokuwiki.org/security

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s