如何使用mod_rewrite更改URL的路径和文件名
时间:2020-03-06 14:27:42 来源:igfitidea点击:
我想获取网址:
http://www.mydomain.com/signup-12345
并实际给他们:
http://www.mydomain.com/signup/?aff=12345
我没有有关mod_rewrite的历史记录,帮助!
解决方案
试试这个 :
RewriteRule ^ / signup-(\ d +)/ $ / signup /?aff = $ 1 [I]
我发现相对难以发现的是如何执行与我们正在执行的相反的操作,即我们需要找出查询字符串的一部分的值。
因此,例如:
如果我们想重写网址:
http://www.example.com/signup-old-script.asp?aff=12345
到:
http://www.example.com/signup-new-script.php?affID=12345
我们可以使用:
RewriteCond %{query_string}& ^aff=((.+&)|&)$ RewriteRule ^/signup-old-script.asp$ /signup-new-script.php?affID=%2 [L,R]
请注意,重写规则中的%符号而不是$符号。
我必须这样做,以便可以在新站点中支持旧的Flash映射,该站点中包含指向查询字符串中带有ID的" .cfm"文件的链接。