【发布时间】:2010-01-25 17:24:34
【问题描述】:
我有一个 .htaccess 文件,里面有这个:(不是我写的)
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?bla=$1 [L,QSA]
问题网址http://localhost/index/test
“index”部分似乎与 web 目录中的“index.php”匹配,并且 Rewrite 失败。
问题:出了什么问题,我该如何解决?
【问题讨论】:
-
“重写失败”是什么意思?您正在匹配任何内容并将其路由到 index.php?bla=anything,所以您可能对正在发生的事情感到困惑? index.php 中的 print_r($_GET) 并查看是否设置了 bla。
-
当索引在 URL 中时,我不希望 "RewriteCond %{REQUEST_FILENAME} !-f" 为真,文件不称为 "index",而是称为 "index.php"。
标签: regex apache .htaccess mod-rewrite