htaccess rewriterule被忽略了

时间:2010-04-20 18:00:23

标签: .htaccess mod-rewrite

我的.htaccess文件无法正常工作。它过去常常。

这是文件:

RewriteEngine On

# Category

#Edit
RewriteRule ^edit/([^/]+)/?$ /edit_solutions/index.php?category=$1 [L]
RewriteRule ^edit/?$ /edit_solutions/choose.php [L]

#Report
RewriteRule ^reports/([^/]+)/?$ /report/report.php?project=$1 [L]
RewriteRule ^reports/?$ /report/index.php

#View
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ /view/index.php?category=$1
RewriteRule ^$ /view/choose.php


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

出于某种原因,像mydomain.com/edit/butler/这样的链接会转到视图条件,而不是编辑条件。因此视图将类别作为编辑/管家/。任何想法为什么第一个条件没有正确地提取该网址?

修改:我刚检查了$ _GET内容,该类别被设置为error.html。

1 个答案:

答案 0 :(得分:1)

我发现问题其实不是htaccess文件。有一个名为edit.old.php的文件以某种方式被调用。我把它重命名为old.edit.old.php(好名字,我知道),现在网站运行正常。将此留作参考