我的网站上有一个以sc_purchase_a.asp结尾的旧链接?discode = foo& ProID = bar。我想将其重定向到/courses/shop/4u.php?discode=foo。这是我到目前为止所做的,但它不起作用。
RewriteRule ^sc_purchase_a.asp?discode=(\w+)&ProdID=(\w+)/?$ /courses/shop/4u.php?discode=$1 [QSA]
这似乎不起作用。
根据starkeen的回答,我提出了这个问题,但它没有用,现在给了我500个错误。
RewriteCond %{THE_REQUEST} /sc_purchase_a\.asp\?discode=([^&]+)&ProID=.+ [NC]
RewriteRule ^ /courses/shop/4u.php?discode=%1 [L,R]
答案 0 :(得分:2)
QueryString不是RewriteRules模式中匹配的一部分。要使用查询字符串,您需要使用RewriteCond
RewriteEngine on
RewriteCond %{THE_REQUEST} /page\.asp\?code=([^&]+)&id=.+ [NC]
RewriteRule ^ /page.php?code=%1 [L,R]