การเปิดใช้งาน mod_rewrite บน Ubuntu

หาก Server ไม่สามารถใช้งาน ไฟล์ .htaccess ได้ หรือไม่สามารถใช้งาน mod_rewrite ได้ อาจเป็นเพราะคุณไม่ได้เปิดใช้งาน mod_rewrite บน Server

การตรวจสอบก็สามารถทำได้ง่ายๆโดยการดูที่ phpinfo() มองหา คำว่า mod_rewrite ดังรูป (ภายใน Section Loaded Modules)
หากไม่พบ สามารถเปิดใช้งานได้ด้วยคำสั่ง
sudo a2enmod rewrite && sudo service apache2 restart

หากยังไม่สามารถใช้งานได้อีก ลองตวจสอบดูว่ามีการอนุญาติการใช้งาน (AllowOverride) หรือยัง

เปิดไฟล์ apache2.conf
sudo gedit /etc/apache2/apache2.conf

มองหาบรรทัดประมาณนี้
<Directory /mnt/Server/htdocs/>
    Options Indexes FollowSymLinks
    AllowOverride all
    Require all granted
</Directory>

/mnt/Server/htdocs/ คือโฟลเดอร์ที่เก็บไฟล์ของ Server ในเครื่องของเรานะครับ ซึ่งอาจแตกต่างจากนี้ ซึ่งที่สำคัญก็คือ การกำหนด AllowOverride all ให้กับโฟลเดอร์นี้

เสร็จแล้ว ให้บันทึก และ restart Apache ใหม่อีกครั้ง
sudo service apache2 restart
^