สำหรับใครที่ใช้งานโฮสติง VPS ที่มาพร้อมกับ DirectAdmin และต้องการที่จะอัพเดทเวอร์ชันเซอร์วิสต่างๆด้วยตัวเองไม่ว่าจะเป็น apache ,curl , exim , mysql ฯลฯ ในที่นี้เราจะไปโฟกัสที่การอัพเกรด PHP
เนื่องจากก่อนหน้านี้โฮส VPS ของผมเองนี่แหละ ใช้ PHP เวอร์ชันที่ค่อนข้างเก่าติดตั้งมาพร้อมโฮสตั้งแต่สมัยดึกดำบรรพ์โน่น ปัจจุบันเขาอัพเดทไปถึงเวอร์ชัน 7 แล้ว ผมก็ไม่ได้อัพเกรดตามไปซักที จนอยู่มาวันหนึ่ง API ที่ผมต้องการจะใช้งานมันหมดอายุ และต้องอัพเกรดเวอร์ชัน PHP ขึ้นไปเพื่อใช้งานด้วย จึงเป็นสาเหตุให้ต้องมานั่งทำ แล้วก็เลยเอามาเขียนบอกเล่าเก้าสิบ สิบเอ็ด สู่กันฟังเผื่อใครกำลังประสบปัญหาอยู่เหมือนกันนั่นเอง
CustomBuild คืออะไร?
จากที่เกริ่นแบบคร่าวๆมาข้างต้น CustomBuild ก็คือเครื่องมือตัวหนึ่งที่ช่วยเราติดตั้ง/อัพเดท เซอร์วิสต่างๆในเซิร์ฟเวอร์ของเรา อาทิเช่น
- Apache 1.3, 2.0, 2.2 or 2.4
- AWstats
- Autoconf
- Automake
- ClamAV
- cURL
- Dovecot
- Exim configuration files
- FreeType
- GD
- ionCube loaders
- libiconv
- libjpeg
- libpng
- libmcrypt
- libmhash
- mod_perl
- MySQL
- PHP (with or without suPHP) 4, 5 or 6
- ProFTPD
- Pure-FTPd
- SpamAssassin
- Webalizer
- Zend Optimizer
- Zlib
และนอกจากนี้ยังสามารถอัพเดทแอพพลิเคชันอื่นๆที่เราใช้งานเป็นประจำ เช่น:
- Atmail Open webmail
- Roundcube webmail
- Squirrelmail webmail
- phpMyAdmin
- UebiMiau webmail
แล้วทำไมเราต้องเลือกใช้งาน CustomBuild?
ก็อย่างที่บอกก่อนหน้าว่า Custombuild นั้นสามารถที่จะช่วยเราติดตั้ง/อัพเดท ซอฟต์แวร์ต่างๆที่ได้กล่าวมาด้วยคำสั่งแค่ 1 คำสั่ง และมันก็ยังสามารถส่งข้อมูลแจ้งเตือนผลการทำงานไปยังอีเมลของเราเมื่อมีการติดตั้งหรืออัพเดทซอฟต์แวร์อีกด้วย ยกตัวอย่างเช่นในกรณีที่เราต้องการอัพเดทซอฟแวร์หลายๆตัวพร้อมกัน CustomBuild ก็รองรับ ให้เรารันคำสั่งแค่ 1 คำสั่งในการอัพเดทซอฟต์แวร์หลายๆตัวพร้อมกันได้อีกด้วย
อันดับแรกให้เราตรวจสอบบนเซิร์ฟเวอร์ของเราก่อนว่า CustomBuild ถูกติดตั้งไว้หรือยัง เพราะบางครั้งบน VPS เซิร์ฟเวอร์ที่เราเช่ามาผู้ให้บริการอาจจะติดตั้งมาให้อยู่แล้วตั้งแต่แรก แต่ถ้าหากยังไม่ได้ติดตั้งเราก็ค่อยข้ามไปที่ขั้นตอนการติดตั้ง CustomBuild ซึ่งก็ไม่ใช่ขั้นตอนที่ยุ่งยากอะไร
ตรวจสอบว่า CustomBuild ติดตั้งบนเซิร์ฟเวอร์เราหรือยัง?
– ล็อกอินเข้าเซิร์ฟเวอร์ของเราด้วย root user (อ่านมาถึงตรงนี้ สำหรับใครที่เช่าเซิร์ฟเวอร์แบบ VPS จะสามารถเข้าถึง root ได้ หรือสอบถามกับผู้ให้บริการเพิ่มเติมได้ครับ)
– เมื่อล็อกอินเข้าไปที่เซิร์ฟเวอร์ด้วย SSH , Telnet หรือ Console แล้วแต่ละผู้ให้บริการ อาจจะให้มาไม่เหมือนกัน ให้ CD ไปที่ /usr/local/direcadmin/ เพื่อดูว่ามี CustomBuild ติดตั้งไว้หรือยัง
ถ้าเราตรวจสอบแล้วพบบว่า CustomBuild มีการติดตั้งไว้อยู่แล้ว (ดูตัวอย่างจากภาพประกอบด้านบน จะพบบว่ามี CustomBuild ติดตั้งไว้อยู่แล้ว) สามารถข้ามขั้นตอนการติดตั้งไปได้เลย
วิธีการติดตั้ง CustomBuild
หากเราเช็คแล้วว่า CustomBuild ยังไม่ได้ติดตั้ง ขั้นตอนต่อไปนี้จะเป็นการติดตั้ง CustomBuild
– loging ด้วยสิทธิ์ root เหมือนเดิม แล้วไปที่ /usr/local/direcadmin/ จากนั้นทำการโหลด CustomBuild Version 1.2 (V1.1 หมดอายุไปแล้วนะจ๊ะ) รันคำสั่งตามตัวอย่างต่อไปนี้ได้เลยครับ
cd /usr/local/directadmin
wget http://files.directadmin.com/services/custombuild/1.2/custombuild.tar.gz
tar xvzf custombuild.tar.gz
cd custombuild
./build
เมื่อติดตั้งเสร็จแล้ว ครั้งแรกก่อนที่จะไปรันคำสั่งอื่นๆได้ ต้องรันคำสั่งนี้ด้วยนะ
./build all d
เรียบร้อย ! เสร็จแล้วครับสำหรับขั้นตอนการติดตั้ง CustomBuild
ตรวจสอบเวอร์ชันปัจจุบันของ PHP ด้วย DirectAdmin
ตัดภาพกลับไปที่หลังบ้านของเราที่จัดการด้วย DirectAdminเราจะไปด้วยสอบเวอร์ชันปัจจุบันของ PHP ที่เราใช้งานอยู่ (จริงๆแล้วเราตรวจสอบก่อนหน้านั้นแล้วหละ) วิธีการตรวจสอบก็ง่ายๆครับ เราล็อกอินเข้า DirectAdmin แล้วไปที่ Server Information จากนั้นก็จะเห็นรายการของซอฟต์แวร์ต่างๆที่ติดตั้งอยู่ เช่น ในที่นี้เราต้องการตรวจสอบว่าเราใช้งาน PHP เวอร์ชันไหนอยู่ จากตัวอย่างก็จะพบว่าเราติดตั้ง PHP เวอร์ชัน 5.3 อยู่นั่นเอง
วิธีการ configure Custombuild
ตัดภาพกลับไปที่เซิร์ฟเวอร์ที่เราเข้าควบคุมด้วย SSH , Telnet หรือ Console เราจะมาพูดถึงการตั้งค่าให้กับ CustomBuild เราสามารถที่จะกำหนดเวอร์ชันต่างๆของเซอร์วิสที่เราต้องการใช้งานไว้ในไฟล์ไฟล์ของของ CustomBuild นั่นก็คือไฟล์ options.conf ซึ่งไฟล์นี้ก็เก็บอยู่ในโฟลเดอร์เดียวกันตอนที่เราติดตั้ง CustomBuild นั่นแหละ
cd /usr/local/directadmin/custombuild
– Change Directory ไปที่โฟลเดอร์ของ CustomBuild
./build options
– รันคำสั่งเพื่อดูการตั้งค่า ณ ปัจจุบันของ CustomBuild ว่ากำหนดไว้อย่างไรบ้าง จากตัวอย่างภาพด้านล่างก็จะเห็นว่าตอนนี้กำหนดไว้เป็นเวอร์ชัน 5.3 อยู่ ให้เราทำการแก้ไขเป็นเวอร์ชันที่เราต้องการลงไปแทน
nano options.conf
– ทำการแก้ไขโดยการแก้ไฟล์ options.conf โดยใช้คำสั่ง nano หรือใครถนัดแก้ไขไฟล์ด้วยคำสั่งอื่นก็แล้วแต่ถนัด ในที่นี้ผมจะอัพเดทมาเป็น 5.4 ละกัน เมื่อแก้ไฟล์เสร็จแล้วก็ save ให้เรียบร้อย exit ออกมาได้เลย หากต้องการทราบว่า นอกจาก PHP Version 5.4 แล้ว เราจะสามารถอัพเดทเป็นเวอร์ชันอื่นๆได้อีกไหม สามารถดูจากคอมเม้น #PHP จะพบว่าเราสามารถกำหนด default_php ได้สองค่า คือ 5 หรือ 6 และสามารถกำหนด php5_ver ได้ 5.2, 5.3, 5.4 หรือ 5.5 เผื่อใครอยากอัพเป็น 5.5 หรือ 6 ก็เลือกเวอร์ชันที่จะอัพตามใจฉันได้เลย
./build update_data
– เมื่อแก้ไฟล์เสร็จแล้วก็รันคำสั่งนี้ต่อ (เสมอ) เพื่ออัพเดทข้อมูลในไฟล์ options.conf ที่เราเพิ่งแก้ไปเมื่อกี้นี้
./build versions
– รันคำสั่งเพื่อตรวจสอบว่ามีอะไรบ้างที่เราสามารถอัพเดทได้
./build
– หากต้องการดูว่า เราสามารถใส่ option อะไรได้บ้างก็ลองรัน ./build จะปรากฏรายการคำสั่งที่เราสามารถเลือกใช้ได้
./build php
– ทำการรันคำสั่งนี้เพื่ออัพเดท PHP เป็นเวอร์ชันที่เรากำหนดไว้ รอสักพักนึงจนกระทั่งอัพเดทเสร็จ
service httpd restart
เมื่อเราอัพเดทเสร็จแล้วอย่าลืมรีสตาร์ท Apache ขึ้นมาใหม่เพื่อให้แน่ใจว่า PHP ที่เราเพิ่งอัพเดทไปใหม่ใช้งานได้แล้ว
ถ้าตรวจสอบใน DirectAdmin แล้วขึ้นข้อมูลเหมือนในรูป ก็แสดงว่าเราทำการอัพเดท PHP เป็นเวอร์ชันใหม่ได้สำเร็จแล้ว เย้ !!!!