前兩天下了個最新版本的cakephp作研究時,卻被apach allowoverride的設置問題困擾了。無論怎麼把Allowoverride寫在哪裏都不生效。
原因是Ubuntu下apache2的rewrite模塊默認是不加載的。
只要運行了一下這個命令:a2enmod rewrite 就可以啓用rewrite模塊了。
網查了一下資料,Apaceh2 多了一組 a2enmod, a2dismod指令,用於啓用和禁用Apache的模塊。a2enmod用於在Apache啓用指定的模塊,它實際上做的是在/etc/apache2/mods-enabled目錄下創建模塊文件的符號鏈接。相反a2dismo則是通過刪除符號鏈接而達到禁用指定模塊的功能。當然,啓用已啓用的模塊或禁用已禁用的模塊是不會報錯的。^^
這裏有必要說明一下:
/etc/apache2/mods-available 放apache可用的模塊文件
/etc/apache2/mods-enabled 放apache已啓用的模塊文件的鏈接
弄明白了,去查看一下/etc/apache2/mods-enabled目錄,果然有新增了一條rewrite.load的鏈接。
apache2 rewrite is enabled
apache2 rewrite is enabled
來自http://blog.thinklet.net/franky/2009/02/17/ubuntu-apache2-%E9%85%8D%E7%BD%AEallowoverride/
本篇文章來源於 Linux公社網站(www.linuxidc.com) 原文鏈接:https://www.linuxidc.com/Linux/2009-02/18657.htm