【发布时间】:2013-11-20 22:46:37
【问题描述】:
我最近部署了 CakePHP,但是 mod_Rewrite 目前不工作:
我的 apache2.conf 中有以下内容
<Directory "/path/to/the/app">
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
我跑了
sudo a2enmod rewrite
这表明该模块已启用,我还检查了具有
的 .htaccess 文件<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
有没有人对 mod_rewrite 为什么不起作用有任何其他想法?
请注意,我已经重新启动了 apache,但没有成功
【问题讨论】:
-
什么不起作用?你有错误吗?你检查过你的日志吗?您的 webroot 目录中是否有 htaccess 文件?
-
是的,.htaccess 文件位于文件夹 /var/www/site/App 中,这与 apache2.conf 中的设置相同,除了默认的 cakephp 页面指出“URL 重写您的服务器上没有正确配置。”
-
您的
/var/www/site/App目录中有webroot目录吗? -
@JonLin 是的,那里有一个 webroot,查看了 apache 日志中的 error.log,没有任何错误
-
尝试将这一行
RewriteBase yourpath添加到您的 .htaccess 中,其中 yourpath 是 /var/www 目录中的路径。
标签: apache .htaccess cakephp mod-rewrite