.htaccess htaccess将root?var=abc重定向到file.php?var=abc

.htaccess htaccess将root?var=abc重定向到file.php?var=abc,.htaccess,.htaccess,我无法将像site.com/?var=abc这样的URL重定向到site.com/file.php?var=abc 我尝试了很多重定向代码,但都不起作用。我在站点的根目录中安装了Wordpress,并尝试将基于GET变量的旧内容移动到file.php 谢谢大家! 要将每个空url重定向到file.php,以下是您需要在.htaccess中编写的内容: RewriteRule ^/?$ file.php [R=301,QSA,L] [QSA]标记将把您的查询字符串(?var=abc)附加到新的u

我无法将像
site.com/?var=abc
这样的URL重定向到
site.com/file.php?var=abc

我尝试了很多重定向代码,但都不起作用。我在站点的根目录中安装了Wordpress,并尝试将基于GET变量的旧内容移动到file.php


谢谢大家!

要将每个空url重定向到
file.php
,以下是您需要在
.htaccess
中编写的内容:

RewriteRule ^/?$ file.php [R=301,QSA,L]
[QSA]
标记将把您的查询字符串(
?var=abc
)附加到新的url


要重定向精确格式
/?var=abc
,您需要使用
%{QUERY\u STRING}

# Check for query string, must be exactly "?var=abc"
RewriteCond %{QUERY_STRING}  ^var=abc$
# Check for url, must be "/" or ""
RewriteRule ^/?$ file.php [R=301,QSA,L]
通过在第一个变量(var)后添加(.*)来解决此问题,链接中还有许多其他参数

RewriteCond %{QUERY_STRING}  ^var=(.*)$

RewriteRule ^/?$ /file.php$1 [R=301,QSA,L]

谢谢,但我不想重定向每个URL。仅与格式完全匹配的文件:site.com/?var=abc。我现在在根域中有另一个使用永久链接的网站。我需要将旧网站重定向到file.php.Not working。我试过的方法完全是这样的:RewriteCond%{QUERY_STRING}^var=abc$RewriteRule^/?$/file.php[R=301,QSA,L]你可能有干扰。您的htaccess中还有其他内容吗?“不工作”是什么意思?发生了什么?我已经从wordpress中删除了重定向。什么都没有发生,var=abc的链接不会重定向到file.php,wordpress网站的主页会打开,没有错误。请注意301重定向是强缓存的。您可能需要清除浏览器缓存以考虑新的htaccess。