我正在尝试将具有特定查询字符串的所有页面重定向到另一个页面。 许多页面都有此查询字符串,但 URI 不同。 我想捕获任何 URI,如果它有这个查询字符串来重定向它,但我所做的一切都不起作用。
所以要明确一点:
http://example.com/?redirectme=1
将重定向到
http://example.com/newpage
同时还:
http://example.com/randompage/rtandomsirectory?redirectme=1
也会重定向到
http://example.com/newpage
我确信我可以在 htaccess 中放入 2-3 行来执行此操作,但它不起作用。 这是一个 WordPress 网站,如果这应该有所作为的话。
这是我尝试过的:
RewriteCond %{REQUEST_URI} ^/(.+)
RewriteCond %{QUERY_STRING} ^redirectme=1$
RewriteRule ^/?$ http://example.com/? [R=301,L]
和
RewriteCond %{REQUEST_URI} ^/(.+)
RewriteCond %{QUERY_STRING} ^redirectme=1$
RewriteRule (.*) http://example.com/? [R=301,L]
不同的变体:
RewriteCond %{REQUEST_URI} (.+)
RewriteCond %{QUERY_STRING} ^redirectme=1$
RewriteRule (.*) http://example.com/? [R=301,L]
第一行:
RewriteCond %{REQUEST_URI} (.*)
等等......
这里有这方面的专家吗?
谢谢
最佳答案
您可以将此重定向规则用作网站根目录中的顶级规则:
RewriteEngine On
RewriteCond %{QUERY_STRING} ^redirectme=1$ [NC]
RewriteRule ^ /newpage? [R=301,L]
# remaining rules below this line
关于wordpress - 如果任何目录具有特定的查询字符串,则重定向该目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51122556/