【发布时间】:2014-06-08 17:39:19
【问题描述】:
我刚刚将一个concrete5 项目复制到我的本地机器上,并试图让它在本地主机上运行。我一开始就有权限问题,所以我只运行了一个sudo chmod 777 -R site 来解决这个问题。然后我在点击链接时遇到了问题。除了index.php 之外的任何东西都会导致 404。所以我弄乱了 htaccess 文件。它以这种状态出现:
# Use PHP53 as default
AddHandler application/x-httpd-php53 .php
<IfModule mod_suphp.c>
suPHP_ConfigPath /opt/php53/lib
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}/index.html !-f
RewriteCond %{REQUEST_FILENAME}/index.php !-f
RewriteRule . index.php [L]
</IfModule>
我把它改成了这样:
# Use PHP53 as default
AddHandler application/x-httpd-php53 .php
<IfModule mod_suphp.c>
suPHP_ConfigPath /opt/php53/lib
</IfModule>
<Directory>
AllowOverride All
</Directory>
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteBase /
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}/index.php !-f
RewriteRule . index.php [L]
</IfModule>
现在,这些都没有帮助。我决定在数据库中禁用漂亮的 URL。我这样做了,大多数链接都有效。看起来有些仍然没有(可能是包中涉及的那些。我不知道,因为我正在拿起这个项目,有人离开它)。请记住,这一切都在我展示的第一个 .htaccess 文件的实时服务器上完美运行。
知道如何解决这个问题吗?
【问题讨论】:
-
您是否复制了数据库并将
config/site.php更改为匹配?
标签: php .htaccess http-status-code-404 concrete5