CakePHP配置-开启Ubuntu的Apache的mod-rewrite

Ubuntu默认安装mod_rewrite,但是不自动开启,通过查看apache的配置文件结构,可以实现如下:

把 /etc/apache2/mods-available/rewrite.load 连接到 /etc/apache2/mods-enabled/rewrite.load 来打开 Mod_rewrite 模块。

运行命令: sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load

问题依然没有解决,事实上,当我在 Ubuntu 中采用上述做法并重启了 Apache 服务后,仍然无法正常 rewrite 网址。

这里,还有一点需要注意的地方:修改 /etc/apache2/sites-available/default中 AllowOverride None 修改为: AllowOverride All

上面的 /etc/apache2/sites-enabled/000-default 实则为 /etc/apache2/sites-available/default 的连接。

而 AllowwOverride None 则会完全忽略 .htaccess 文件,自然其中所定义的 rewrite 规则也就不能生效了。

最后重启 Apache: sudo /etc/init.d/apache2 restart 搞定。

相关推荐