HTAccess重写问号

时间:2017-12-14 10:11:52

标签: apache .htaccess mod-rewrite url-rewriting

我有一个关于我的重写的问题,我有一个RewriteRule,其中带有一个带有参数的问号,参数之后的值永远不会相同,所以你最终会在参数之后得到不同的数字。 / p>

我的链接:

http://www.website.com/home.html?start=96

我的重写规则:

RewriteRule ^home\.(.*)[?]start=(.*)$ http://website.com?start=$1 [R=301,L]

预期输出:

http://www.website.com?start=96

我已经搜索了一个太阳镜了,但是我真的不知道其他人正在哄骗什么东西,所以我问这个,所以我可能会更好地看一下它。谢谢!

1 个答案:

答案 0 :(得分:1)

RewriteRule仅匹配路径,这不包括查询字符串。对于URL的任何其他部分,您需要使用RewriteCond和相应的变量。

RewriteCond %{QUERY_STRING} (?:^|&)start=([^&]*)
RewriteRule ^home\. http://website.com?start=%1 [L,R=permanent]

注意:我尊重你的初始模式