apache .htaccess 删除 .php 之后的所有内容

apache .htaccess 删除 .php 之后的所有内容

我试图让所有网站都以 site.php 而不是 site.php?abc=1...etc 的形式出现

目前我的 .htaccess 文件显示:
RewriteCond %{QUERY_STRING} .+
RewriteRule ^(.*)$ /$1? [R=301,L]
Options -Indexes
但这不起作用。如有任何帮助,我将不胜感激

答案1

这有效:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} .+
RewriteRule ^(.*)$ /site.php? [R=301,L]
</IfModule>

使用 apache2 测试

答案2

对于每个页面(不仅仅是“site.php”),你可以使用

RewriteCond %{QUERY_STRING} .
RewriteRule (.*) $1?

相关内容