繁体   English   中英

CakePHP URL重写在Ubuntu上不起作用

[英]CakePHP URL rewriting not working on Ubuntu

我似乎无法使URL重写在具有apache2的Ubuntu 12.04服务器上正常工作,并且当默认页面加载(主页)时,它只是纯文本而没有CSS。 我正在使用Cake 2.3.9,并且在重新安装到/ var / www /时收到以下消息。 所以我的根目录看起来像

/var/www/app
/var/www/lib
/var/www/index.php
/var/www/.htaccess
....

我得到的错误是

您的服务器上没有正确配置URL重写。 1.帮助我配置它2.我不/不能使用URL重写

我尝试了这篇文章中的所有内容,但仍未收到消息。

该帖子中我唯一没有做的就是接受的答案,这是

事实证明.htaccess文件未与cakePHP源一起复制。 当使用cp命令或在文件浏览器中看不到隐藏文件时,这是一个常见问题,除非您复制顶层目录。 将文件直接复制到我的项目文件夹中对我来说是固定的,而不必弄乱我的Apache设置。

该用户是否建议确保.htaccess为/ var / www? 我不太理解他们的建议。 我在本地下载Cake,然后使用SFTP将其上传到ubuntu服务器上的/ var / www。

除非有一些其他的modrewrite设置,否则我几乎肯定它已启用。 当我输入sudo a2enmod rewrite它说Module rewrite already enabled

我也在这里尝试了一切,但仍然没有运气。 我完全被困住了。

是的,在这种情况下,.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

我卸载并重新安装了LAMP堆栈,现在可以使用了。 我也从2.3.9降级到CakePHP 2.3.8,所以也许里面也有东西。

无论如何,它现在正在工作!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM