[英]htaccess Rewrite rule appending query string parameters
我正在尝试为以下URL编写重写规则:redirect
www.domain.com/mbc-ex
到www.domain.com
www.domain.com/mbc-ex?abcd=123
到www.domain.com
基本上,我不希望重定向后具有任何查询字符串参数。 这是我尝试过的规则
^/mbc-ex\?(.*)$ http://www.domain.com [NC,L,U]
上面的规则仍然附加了查询字符串参数
^/mbc-ex$ http://www.domain.com [NC,L,U]
这一个按预期工作
您需要QSD | qsdiscard标志
^/mbc-ex http://www.domain.com [NC,L,U,QSD]
从apache2 2.4.0开始
2.4.0之前的版本:添加? 到您的新网址的末尾
^/mbc-ex http://www.domain.com? [NC,L,U]
看来您的正则表达式根本不匹配。
^/mbc-ex\?(.*)$ http://www.domain.com [NC,L,U]
根据http://httpd.apache.org/docs/2.0/misc/rewriteguide.html上的示例,您不需要在问号上使用反斜杠。
这是检查您的规则的便捷在线测试工具: http : //martinmelin.se/rewrite-rule-tester/
使用此规则,我可以使用以下规则使您的网址正常工作:
RewriteRule ^mbc-ex/?(.*) http://www.domain.com [NC,L,U]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.