将 /url/path/index.php 重写为 /url/path

将 /url/path/index.php 重写为 /url/path

我不太清楚如何在我的 .htaccess 文件中使用正则表达式来从 URL 末尾删除 index.php(当且仅当它是字符串中的最后一个元素时)。

如果 URL 是 example.com/path/index.php,它应该变成:example.com/path/

但如果 url 是 example.com/path/index.php?blah=0,它应该保持不变。

有什么帮助吗?我认为这可能有效,但似乎无法保留上述后一种情况:

重写规则 ^(.*)$ /index.php/$1 [L]

答案1

使用

RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*/)index.php$ $1 [L]

相关内容