• You are not authorized to view comments.
  • You are not authorized to view comments.

การติดตั้ง VHCS2 บน Debian Lenny

เมื่อวันจันทร์ที่ผ่านมา ผมต้องทำเว็บเซิร์ฟเวอร์ให้กับคณะเภสัชศาสตร์ ศิลปากร (ไม่เคยทำมาก่อนด้วย ก็กลัวจะทำไมได้เหมือนกัน) โดยตอนแรกเลือกใช้ Ubuntu Server 8.04 LTS แล้วก็เปลี่ยนมาเป็น Debian Lenny แทน ขั้นตอนการลงก็ไม่ได้ยากอะไร หลังจากนั้นก็ลง VHCS (Virtual Hosting Control System) โดยใช้วิธีตามเว็บนี้ VHCS Installation script by Armadillo ซึ่งเราไม่จำเป็นต้องลง Apache2, PHP5, MySQL และ phpMyAdmin ก่อน

ก่อนที่เราจะลง VHCS นั้น เราต้องเพิ่ม source list ก่อน โดยดูจากเว็บไซต์ Dotdeb โดยเปิดไฟล์ที่อยู่ใน /etc/apt/sources.list ด้วยคำสั่ง

vim /etc/apt/sources.list

จากนั้นให้เพิ่ม
deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all

ติดตั้ง VHCS2

ขั้นแรกต้องโหลด script ลงมาที่เครื่องก่อนแล้วจึงสั่งให้ทำงาน ดังนี้

wget http://mirrors.penguinfriends.org/VHCS2/vhcs.sh
chmod 777 vhcs.sh
./vhcs.sh

ถัดจากนี้ไป จะเข้าสู่การทำงานตามใน script ที่โหลดมา ผมก็มีหน้าที่กรอกข้อมูลตามที่ script ต้องการเท่านั้น

ภาพข้อตกลงการใช้งานการติดตั้ง VHCS ผ่าน script นี้
รูปที่ 1 แสดงภาพข้อตกลงการใช้งานการติดตั้ง VHCS ผ่าน script นี้
ภาพเมนูหลักของการติดตั้ง VHCS
รูปที่ 2 แสดงภาพเมนูหลักของการติดตั้ง VHCS

เมื่อเลือกติดตั้ง VHCS 2.4.7.1 แล้ว ก็จะเข้าสู่งขั้นตอนดังต่อไปนี้

  1. Checking Distribution name
  2. Beginning Installation Now
  3. Making Temporary Directories
  4. Updating apt cache
  5. Upgrading the system
  6. Removing Uneeded Packages
  7. Removing Some Packages from startup if they exist
  8. Installing Required Packages
    ภาพขั้นตอน Installing Required Packages
    รูปที่ 3 แสดงภาพขั้นตอน Installing Required Packages

    หลังจากกด enter แล้วก็จะให้ตั้งรหัสผ่านของ MySQL และยืนยันรหัสผ่าน ดังรูปด้านล่าง

    ภาพการตั้งรหัสผ่านของ MySQL
    รูปที่ 4 แสดงภาพการตั้งรหัสผ่านของ MySQL
    ภาพการยืนยันรหัสผ่านของ MySQL
    รูปที่ 5 แสดงภาพการยืนยันรหัสผ่านของ MySQL

    ขั้นตอนต่อไปนั้นมีความสำคัญมาก โปรดอ่านข้อความในรูปที่ 4 ให้ละเอียดว่าจะต้องทำอะไร

    ภาพหน้าต่าง Configuring courier-base
    รูปที่ 6 แสดงภาพหน้าต่าง Configuring courier-base
    ภาพหน้าต่าง Postfix Configuration
    รูปที่ 7 แสดงภาพหน้าต่าง Postfix Configuration
    ภาพหน้าต่าง ProFTPD configuration
    รูปที่ 8 แสดงภาพหน้าต่าง ProFTPD configuration
  9. Downloading VHCS2 Archive
  10. Untaring VHCS Archive
  11. Compiling/Installing VHCS2
  12. Setting up Mysql Password
  13. Running VHCS Install Engine ในขั้นตอนนี้จะต้องกรอกข้อมูลที่ script ต้องการ ดังรูปด้านล่าง
    ภาพตัวอย่างข้อมูลที่ต้องกรอกในการติดตั้ง VHCS2
    รูปที่ 9 แสดงภาพตัวอย่างข้อมูลที่ต้องกรอกในการติดตั้ง VHCS2
  14. Write Configuration Files
  15. Restart Apache ระหว่างการรีสตาร์ทนั้นผมเจอปัญหาดังรูปด้านล่าง โดยผมจะแก้ไขหลังจากการติดตั้งเสร็จ
    ภาพปัญหาที่พบระหว่างการรีสตาร์ท Apache
    รูปที่ 10 แสดงภาพปัญหาที่พบระหว่างการรีสตาร์ท Apache
  16. Adding Daemon to rc*.d
  17. Restoring user's source.list
  18. Congratulations
    ภาพเสร็จสิ้นการติดตั้ง VHCS2
    รูปที่ 11 แสดงภาพเสร็จสิ้นการติดตั้ง VHCS2

แก้ไขปัญหาที่พบ

หลังจากติดตั้ง VHCS เรียบร้อยแล้ว ต่อไปเราก็มาแก้ปัญหาที่พบกันต่อ โดยเริ่มแก้ปัญหาของ Apache ก่อน

 
apache2: apr_sockaddr_info_get() failed for demo.pharm.su.ac.th 
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName 
[Mon May 04 20:50:20 2009] [warn] NameVirtualHost *:80 has no VirtualHosts 

วิธีแก้ไขนั้นให้เปิดไฟล์ที่ /etc/apache2/apach2.conf ด้วยคำสั่ง
 
vim /etc/apache2/apach2.conf 

จากนั้นให้เพิ่ม Servername demo.pharm.su.ac.th เข้าไปในไฟล์ apache2.conf
 
Servername demo.pharm.su.ac.th 

ต่อไปให้เปิดไฟล์ที่ /etc/apache2/port.conf
 
vim /etc/apache2/port.conf 

จากนั้นให้ comment ในบรรทัดที่เป็น NameVirtualHost *:80
 # NameVirtualHost *:80 

เมื่อเสร็จแล้ว ลองสั่งรีสตาร์ทด้วยคำสั่ง
 
/etc/init.d/apache2 restart 

จะเห็นว่าไม่มีข้อผิดพลาดแจ้งแล้ว

เมื่อแก้ปัญหาของ Apache เสร็จก็ถึงคราวของ proFTPD บ้าง ซึ่งปัญหาของมัน คือ

 
- warning: the DisplayFirstChdir directive is deprecated and will be removed in a future release.  Please use the DisplayChdir directive. 
- Fatal: unknown configuration directive 'SQLBackend' on line 88 of '/etc/proftpd/proftpd.conf' 

วิธีแก้นั้น ให้เปิดไฟล์ที่ /etc/proftpd/proftpd.conf ด้วยคำสั่ง
 
vim /etc/proftpd/proftpd.conf 

แล้วหาคำว่า DisplayFirstChdir แก้ให้เป็น DisplayChdir ต่อไปเปิดไฟล์ที่ /etc/proftpd/modules.conf ด้วยคำสั่ง
 
vim /etc/proftpd/modules.conf 

ให้เอา comment ของ mod_sql.c และ mod_sql_mysql.c ออก จะเป็นดังตัวอย่าง
 
# Install proftpd-mod-mysql or proftpd-mod-pgsql to use this 
LoadModule mod_sql.c 
... 
# Install proftpd-mod-mysql to use this 
LoadModule mod_sql_mysql.c 

ต่อไปเปิดไฟล์ที่ /etc/hosts ด้วยคำสั่งนี้
 
vim /etc/hosts 

ซึ่งข้อมูลที่มีอยู่ คือ
 
127.0.0.1       demo.local      localhost 
192.168.77.128  demo            demo 

ให้แก้เป็น
 
127.0.0.1       demo.local              localhost 
192.168.77.128  demo.pharm.su.ac.th     demo 

เมื่อเสร็จตามขั้นตอนด้านบนแล้ว ให้สตาร์ทการทำงานของ proFTPD ด้วยคำสั่งนี้
 
/etc/init.d/proftpd start 

เมื่อเสร็จแล้ว proFTPD จะสามารถทำงานได้ เสร็จกับการลง VHCS2 บน Debian ละ (ใช้ได้กับเซิร์ฟเวอร์ที่อื่นหรือป่าวไม่รู้นะครับ แต่ที่นี่ใช้งานได้แน่นอน) หากใครมีข้อแนะนำสามารถบอกกันได้นะครับ

ปล. ขอขอบคุณผู้ให้คำแนะนำและให้ความช่วยเหลือ
1. ฟอร์ด
2. พี่สุกรี
3. การ