这是我的.htaccess文件的一部分,
RewriteCond %{THE_REQUEST} ^.*/index
RewriteRule ^(.*)index.php$ /$1 [L,R=301]
我理解它的作用,它会搜索,如果结尾部分以index
结尾,则会删除它。
但我现在已经注意到,如果我输入地址栏http://example.com/index/index
,我会收到内部服务器错误,这个错误永远不会好,并且希望它返回404,就像目录{{1}一样不存在或不存在。
如何将规则更改为仅搜索地址为index
然后重写?
由于
答案 0 :(得分: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]