我似乎无法使用apache2在Ubuntu 12.04服务器上进行URL重写,并且当默认页面加载(home)时,它只是没有CSS的纯文本。我正在使用Cake 2.3.9,并在全新安装到/ var / www /时收到以下消息。所以我的根目录看起来像
/var/www/app
/var/www/lib
/var/www/index.php
/var/www/.htaccess
....
我得到的错误是
您的服务器上未正确配置URL重写。 1.帮我配置2.我不能/不能使用URL重写
我尝试了this post中的所有内容,但我仍然得到了消息。
我从未发过的那篇文章中唯一的答案是接受的答案,即
原来,.htaccess文件没有被复制到cakePHP源旁边。 使用cp命令或没有隐藏文件可见时,这是一个常见问题 在文件浏览器中,除非您复制顶级目录。 直接将文件复制到我的项目文件夹,为我修复了它,而不必弄乱我的apache设置。
该用户是否建议确保.htaccess是/ var / www?我不太明白他们建议做什么。我在本地下载了Cake,然后使用SFTP将其上传到我的ubuntu服务器上的/ var / www。
除非有一些备用的modrewrite设置,否则我几乎肯定它已启用。当我输入sudo a2enmod rewrite
时,它会显示Module rewrite already enabled
我也尝试了所有here但仍然没有运气。我完全卡住了。
答案 0 :(得分:0)
是的,.htaccess将需要位于公共Web根目录 - 在这种情况下为/ var / www。 确保您的Web服务器也可以读取该文件。
如果这不起作用: 确保已安装并启用mod_rewrite模块。它应该在Ubuntu 12.04上。 您可以通过列出/ etc / apache2 / mods-enabled的内容进行检查。你应该看到列出了rewrite.load。
如果没有,您可以这样启用它:
sudo -i
cd /etc/apache2/mods-enabled
ln -s ../sites-available/rewrite.load rewrite.load
apache2ctl restart
答案 1 :(得分:0)
我卸载并重新安装了我的LAMP堆栈,它现在可以正常工作了。我也从2.3.9降级到CakePHP 2.3.8,所以也许那里也有东西。
无论如何,它现在正在运作!