#Zend framework on Ubuntu 11.10#
- เตรียม Web server/Database server
- ดาวน์โหลดและติดตั้ง Zend framework
- สร้าง Zend framework โปรเจคท์ด้วย Zend command line tool
- สร้างเวอร์ชวลโฮสต์ (Virtual host)
ผมจะสมมติว่าใช้ Ubuntu 11.10 แบบติดตั้งเพิ่งเสร็จใหม่ๆ นะครับ
อันดับแรกต้องติดตั้ง Apapche/PHP/MySQL ก่อน ด้วยคำสั่ง
sudo apt-get install apache2 mysql-server mysql-client phpmyadmin
(ผมค่อนข้างขี้เกียจนะครับ เลยใช้คำสั่งแค่นี้ ทีเหลือให้ Ubuntu ตรวจสอบเองว่าจะต้องลงอะไรเพิ่มบ้าง)
หลังจากพอลงเสร็จ ให้เรียก http://localhost/phpmyadmin ดูว่าเข้าได้หรือไม่ ถ้าเข้าได้แสดงว่าผ่าน ไปขั้นตอนต่อไป
เปิด mod_rewrite ด้วยคำสั่ง
sudo a2enmod rewrite
แล้วรีสตาร์ท Apache ทีนึง ด้วยคำสั่ง
sudo service apache2 restart
ทีนี้ก็ไปโหลด Zend framework http://framework.zend.com/releases/ZendFramework-1.11.11/ZendFramework-1.11.11.tar.gz
โหลดเสร็จก็แตกไฟล์ออก ในกรณีของผม เมื่อแตกไฟล์ออกแล้ว จะอยู่ในโฟลเดอร์ /home/demo/ZendFramework-1.11.11/
หน้าตาประมาณนี้
*จากนั้นให้ตั้งค่าคำสั่งสำหรับ Zend command line tool ด้วยการสร้าง alias
alias zf='/home/demo/ZendFramework-1.11.11/bin/zf.sh'
ลองทดสอบด้วยการเช็คเวอร์ชันของ Zend framework
zf show version
ถ้าเห็น Zend Framework Version: 1.11.11 แสดงว่าเป็นอันใช้ได้
ถึงขั้นตอนนี้เราพร้อมจะสร้างโปรเจคท์ด้วย Zend framework แล้ว ให้เลือกโฟลเดอร์ที่ต้องการเก็บไฟล์โปรเจคท์ แล้วสร้างโปรเจคท์ด้วยคำสั่ง zf create project ตามด้วยชื่อโปรเจคท์ สมมติผมตั้งชื่อว่า zendwebapp ก็ต้องพิมพ์
zf create project zendwebapp
เสร็จแล้วเราก็จะได้โฟลเดอร์ที่เป็นโครงสร้างจอง Zend framework
จากนั้นให้คัดลอกไลบรารีของ Zend framework ที่อยู่ใน ZendFramework-1.11.11/library/ ไปวางไว้ในโปรเจคท์ zendwebapp ด้วยคำสั่ง
cd ~/ZendFramework-1.11.11/library/Zend ~/zendwebapp/library/
เสร็จแล้วจะได้หน้าตาประมาณนี้ พร้อมเรียกใช้ แต่ยังใช้ไม่ได้ ต้องสร้าง Virtual host ก่อน
###ขั้นตอนคร่าวมีอยู่สองขั้นตอน###
- แก้ไขไฟล์ /etc/hosts
- เพิ่มการตั้งค่าสำหรับ Apache
ลุยกันเลย
###แก้ไขไฟล์ /etc/hosts###
sudo gedit /etc/hosts
ให้เพิ่มบรรทัดนี้เข้าไป
127.0.0.1 zendwebapp.localhost
กด Save แล้วปิดได้เลย
###เพิ่มการตั้งค่าสำหรับ Apache###
เข้าไปใน /etc/apache2/sites-available/ ซึ่งเป็นโฟลเดอร์ที่ Apache เก็บการตั้งค่าของ Virtual
cd /etc/apache2/sites-available/
ลอกไฟล์ต้นฉบับมา เปลี่ยนชื่อเป็นของเรา ในกรณีนี้ผมใช้ชื่อเดียวกับโฮสต์ที่ผมต้องการเรียกใช้งาน
sudo cp default zendwebapp.localhost
เปิดขึ้นมาแก้ไข
sudo gedit zendwebapp.localhost
แล้วใส่ข้อมูลตามนี้ตรงไป ระวังเรื่อง path ใส่ให้ตรงด้วยนะครับ
จากนั้นก็เปิดใช้งานด้วยคำสั่ง a2ensite
sudo a2ensite zendwebapp.localhost
รีสตาร์ท Web server ซักครั้งนึง
sudo service apache2 reload
เสร็จแล้วเปิด Browser ขึ้นมาแล้วเรียก http://zendwebapp.localhost/ ถ้าไม่มีอะไรผิดพลาด จะเห็นหน้าตาแบบนี้
- Zend tool เป็นคำสั่งสำหรับจัดการโปรเจคท์ผ่านคอมมานไลน์ จะเห็นใช้บ่อยสำหรับ Tutorial ภาษาอังกฤษ ผมอยากให้คุ้นเคยกับมันไว้
- ผมทำ Virtual host เพราะว่า ต้องการแยกโฟลเดอร์ออกจากแต่ละโปรเจคท์ ผมไม่ชอบเอาทุกอย่างไปกองไว้ใน /var/www แล้วเรียกผ่าน http://localhost/webappproject อะไรแบบนี้ และเวลาเรียก $_SERVER['SERVER_NAME'] ใน PHP ได้ค่า http://zendwebapp.localhost/ ที่หล่อกว่า http://localhost/webappproject ตั้งเยอะ