วันอาทิตย์ที่ 30 มกราคม พ.ศ. 2554

เปิดใช้งาน mod rewrite ให้กับ apache2 บน Debian

เมื่อเราติดตั้ง CMS หรือเว็บไซต์ที่เราพัฒนาเองโดยพัฒนาจาก Web Development framework ต่างๆ เช่น Codeigniter CakePHP มักจะมีการใช้งาน mod rewrite เพื่อใช้งาน URL สะอาด (Clean URL) หากนึกไม่ออกว่า URL สะอาดเป็นอย่างไรก็ดูที่ URL หน้าเว็บไซต์ใน ofebia ดูจะเป็น URL ที่อ่านง่ายอีกทั้งเหมาะแก่การทำงานของ search engine อีกด้วย Tutorial นี้แนะนำการปรับแต่งบน Debian เท่านั้นหากใครใช้ Server ที่ Debian เป็นบรรพบุรุษ หรือ Upstream ก็สามารถใช้งานได้ เนื่องจากลักษณะ Software ใกล้เคียงกัน
เริ่มตั้นต้องติดตั้ง apache กันก่อนหากใครติดตั้งแล้วสามารถข้ามขั้นตอนนี้ได้เลย
# aptitude install apache2
หลังจากติดตั้งเสร็จเราก็เปิดการใช้งาน mod rewrite ง่ายๆ โดยใช้คำสั่ง
#a2enmod rewrite
Enabling module rewrite.
Run '/etc/init.d/apache2 restart' to activate new configuration!

แต่ยังไม่เสร็จเพียงเท่านี้ เราต้องบอกให้ apache รู้ด้วยว่า เราอนุญาตให้ทำใช้งาน mod rewrite ที่ directory ใหนเพื่อความปลอดภัย โดยแก้ที่ Virtual host ซึ่งอาจจะเป็นเรื่องเข้าใจยาก หากผู้ปรับแต่งยังไม่รู้จัก Virtualhost ใน Tutorial นี้จะแสดงง่ายๆ ก่อนดังนี้ สมมุติว่าเราเก็บเว็บไซต์เราไว้ที่/var/www ซึ่งมักจะเป็นค่าปริยายของ apache ที่ติดตั้งผ่าน repository ของ Debian เริ่มแก้กันเลยดีกว่า
Virtualhost ที่เป็นปริยายของ Debian จะอยู่ที่ /etc/apache2/sites-enabled/000-default โดยเนื้อหาภายใน config จะมีหน้าตาเป็นแบบนี้(ยกตัวอย่างมานะครับ)



<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all

    </Directory>
:
:
</VirtualHost>

ลองดูที่ <Directory /var/www/> โดยมองที่ AllowOverride None ให้เปลี่ยนเป็น All แค่นี้ก็เรียบร้อยแล้วครับ แต่ยังไม่สามารถใช้งานได้ทันทีเราต้องเริ่มการทำงานของ apache ใหม่ก่อนนั้นก็คือ
#/etc/init.d/apache2 restart
คราวนี้ก็ทดสอบใช้งานดูหากไม่มีอะไรผิดพลาดก็สามารถใช้งาน mod rewrite ได้แล้ว
ขอบคุณข้อมูลดีๆจาก http://web.ofebia.com/contents/view/156.htm

ไม่มีความคิดเห็น:

แสดงความคิดเห็น