所以,我有一个带有 index.php 的网站,并且 GET 请求被发送到它(或 root/)。
例如http://example.com/index.php?category=生日
或http://example.com/?category=Birthday
。
我希望能够仅将这些特定请求 301 重定向到新目录http://example.com/templates/?category=Birthday
我尝试匹配 .htaccess 文件中的 GET 请求的一部分 ?category=
但一旦到达新目录就会导致无限循环。这让我在理解 RegEx 方面遇到了巨大的困难。
所有其他帮助和教程都会执行将所有请求匹配到新目录的任务,但我希望重定向仅在使用?category=
时有效
我的 .htaccess 文件是空白的,并且没有其他特殊重写。如果需要,我可以根据要求发布代码。谢谢!
最佳答案
您可以在站点根目录 .htaccess 中使用此规则:
RewriteEngine On
RewriteCond %{QUERY_STRING} (?:^|&)category= [NC]
RewriteRule ^(index\.php)?$ /templates/ [L,NC,R=302]
QUERY_STRING
将自动转移到目标 URI。
关于.htaccess - 如何将一个或多个 GET 请求重定向到不同的目录或文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34896228/