【发布时间】:2012-11-05 02:08:30
【问题描述】:
我正在尝试解决这个问题超过两个小时。 我有一个使用 .htaccess 来管理网址的个人网站。 它看起来像这样:
RewriteEngine on
RewriteBase /
...
RewriteRule ^sklad/?$ index.php?action=sklad
RewriteRule ^sklad/user/([0-9]+)?$ index.php?action=sklad&user=$1
RewriteRule ^sklad/folder/(.+)?$ index.php?action=sklad&folder=$1
RewriteRule ^sklad/file/(.+)?$ engine/ajax/sklad.php?file=$1
RewriteRule ^sklad/logout/?$ index.php?action=sklad&op=logout
...
RewriteRule ^admin/?$ admin.php
RewriteRule ^admin/news/?$ admin.php?action=news
前五个工作正常。 admin/ 工作正常。但是当我尝试访问 admin/news/ 时,我得到一个空白页面。 Apache 没有显示或记录错误,也没有输出。 admin.php?action=news 工作正常。
sklad/ 和 admin/ 文件夹都实际存在于服务器上。 但是当我将 admin/ 文件夹重命名为其他名称时 OR 将最后一个 RewriteRule 更改为类似
RewriteRule ^admin123/news/?$ admin.php?action=news
我可以访问 admin123/news/。如果它与服务器上存在的实际文件夹有关,那么为什么前五个规则有效?这没有意义。
我没有想法,希望这里有人帮助......
【问题讨论】:
-
/admin/文件夹中是否有以news开头的文件? -
是的,它叫做news.php...我重命名了文件,现在exerything很好,谢谢!不知道这个,非常不明显的错误(或不是?)
标签: .htaccess mod-rewrite