0

这是我的 .htaccess 文件的一部分,

RewriteCond %{THE_REQUEST} ^.*/index
RewriteRule ^(.*)index.php$ /$1 [L,R=301]

我了解它的作用,它会搜索,如果结尾部分以它结尾,index它将删除它。

但是我现在注意到,如果我在地址栏中输入http://example.com/index/index,我会收到一个内部服务器错误,这永远不会是好的,并且希望它返回 404,因为该目录index确实不存在或将不存在。

如何将规则更改为仅搜索地址是否为http://example.com/index然后重写?

谢谢

4

1 回答 1

0

试试这个代码:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s(.*?)/index\.php[?\s] [NC]
RewriteRule ^ /%1 [L,R=301]
于 2013-08-15T18:47:21.037 回答