สำหรับ Virtual Host นั้นเป็นการจำลองการเรียก Web Applicationผ่าน Domain URL เช่น http://yii2-basic.dev เป็นต้น สำหรับวิธีการนั้นทำได้ไม่ยาก มี 2 ขั้นตอนดังนี้
แก้ไขไฟล์ httpd-vhosts.conf
สำหรับไฟล์นี้จะบรรจุอยู่ใน d:/wamp/bin/apache/apachex.x.x/conf/extra/httpd-vhosts.conf แต่ก่อนที่จะไปแก้ไขไฟล์นี้ ต้องทำให้แน่ใจก่อนว่าได้เปิดการใช้งานแล้วในการตั้งค่าในไฟล์ httpd.confที่อยู่ใน d:/wamp/bin/apache/apachex.x.x/conf/httpd.conf
จากนั้นแก้ไขโดยยกเลิก Comment ในบรรทัด 513 เพื่อให้เรียกไฟล์ httpd-vhosts.confได้
ทำการบันทึกไฟล์ httpd.conf
จากนั้นเปิดไฟล์ httpd-vhosts.confและทำให้แน่ใจว่ามีคำสั่งต่อไปนี้อยู่หากไม่มีให้เพิ่ม
<VirtualHost *:80> ServerName localhost DocumentRoot "d:/wamp/www/" </VirtualHost> |
จากนั้นเพิ่มคำสั่งในการสร้าง Virtual Host ดังนี้
<VirtualHost *:80> ServerAdmin webmaster@yii2-basic.dev DocumentRoot "d:/wamp/www/yii2-basic/web" ServerName yii2-basic.dev ErrorLog "logs/yii2-basic.log" CustomLog "logs/yii2-basic.log" common </VirtualHost> |
ส่วนที่สำคัญคือ DocumentRootคือ Root ของ Web Applicationและ ServerNameคือ ชื่อ Domain ที่เราต้องการแล้วทำการบันทึกไฟล์ httpd-vhosts.conf
แก้ไขไฟล์ c:/windows/system32/driver/etc/hosts
เปิด Notepad แบบ Administrator คลิกขวา Run as administrator
จากนั้นไปที่ File->Open แล้วไปเปิดไฟล์ hosts ใน c:/windows/system32/driver/etc/ แล้วเพิ่มข้อมูลต่อไปนี้
จากนั้นบันทึก แล้วทำการ Restart Apache โดยคลิก W สีเขียวแล้วเลือก Restart All Services
หมายเหตุ ชื่อ Domain ใน httpd-vhosts.confกับ ชื่อ Domain ใน hosts นั้นต้องเป็นชื่อเดียวกัน
จากนั้นทดลองเข้า URL ตามชื่อ Domain http://yii2-basic.dev จะได้หน้า Web Applicationดังนี้
การจัดการ URL แบบสวยงาม (Pretty URL)
สำหรับการจัดการ URL ให้สวยงามนั้นเรียกว่า Pretty URL โดยมีตัวอย่างการเรียกใช้งานเช่น
http://yii2-basic.dev/site/about |
จะเห็นว่า index.phpไม่มี และตัวแปร ?r= ก็ไม่มีเช่นกัน ทำให้ URL ดูสวยงามมากยิ่งขึ้นโดยเป็นการใช้งาน rewrite_module ของ Apache ดังนั้นก่อนทำขั้นตอนนี้ควรเป็น rewrite_module ของ Apache ก่อน ถ้าเป็น WAMP Server ให้กด W->Apache->Apache modules ทำให้แน่ใจว่ามีเครื่องหมายถูกหน้า rewrite_module
สำหรับ Pretty URL นั้นมีประโยชน์กับ Search Engine ในการรวบรวมข้อมูลต่างๆ ใน Web Applicationและทำให้ URL มีความสวยงามมากยิ่งขึ้นสำหรับวิธีการจัดการนั้นสามารถทำได้ดังนี้
เพิ่ม UrlManager
ทำการเพิ่ม UrlManagerในส่วนของ Componentในไฟล์ config/web.phpดังนี้
สร้างไฟล์ .htaccess
ทำการสร้างไฟล์ .htaccessในโฟลเดอร์ web ดังนี้
โดยการใส่ข้อมูลดังนี้
หมายเหตุ ดูเพิ่มเติมเรื่องการสร้าง Virtual Host สำหรับ Yii Basic Application Templateที่จะได้ URL http://yii2-basic.dev |
ความคิดเห็น