2

我正在使用CakePHP 1.2版本,当我在 Live Server 上上传我的网站时,它给了我500 Internal Server Error

当我签mod_rewritephpinfo功能时,它不可见,但是在同一台服务器上,另一个 Joomla 站点运行得非常好,没有任何 htaccess 问题或 Joomla 的 AceSEF 组件用于 htaccess 页面/路径的路径重写问题,所以我相信Shared server它必须是那样。

我尝试了不同的选项,例如在根 .htaccess 文件中添加“RewriteBase /”或在 app/webroot/.htaccess 文件中尝试相同的选项,但没有解决方案适合我。

即使我在根 .htaccess 和 app/.htaccess 文件中写入“RewriteBase /”,错误也会更改为400 Page Not Found. 我不知道为什么。

下面是 .htaccess 代码:

根 .htaccess 文件:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule    ^$ app/webroot/    [L]
RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>

应用程序/.htaccess 文件:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule    ^$    webroot/    [L]
RewriteRule    (.*) webroot/$1    [L]
</IfModule>

应用程序/webroot/.htaccess 文件:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php?url=$1 [QSA,L]
</IfModule>

我已经阅读了一些链接,例如:Apache-and-mod_rewrite-and-htaccess虽然没有多大帮助

此错误的任何答案或解决方案?非常感激 !!

谢谢

4

1 回答 1

0

检查重写模块是否链接在apache的启用模块中。就像你说它没有在 phpinfo() 中列出,所以模块可能没有启用,joomla 有一些解决方法。

(使用以下命令需要您自担风险,您需要 root 访问权限)在 debian/ubuntu 下;apache2这样启用模块

cd /etc/apache2/mods-enabled/
ln -s ../mods-available/rewrite.load rewrite.load

你必须重新启动apache2

service apache2 restart

然后应该启用该模块!所以再试一次。

或者,告诉您尝试打开的网址!

于 2013-08-07T09:41:58.777 回答