如何将带有查询字符串的asp url重定向到php url

时间:2017-02-01 07:48:01

标签: php apache .htaccess url-rewriting

我的网站上有一个以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]

1 个答案:

答案 0 :(得分:2)

QueryString不是RewriteRules模式中匹配的一部分。要使用查询字符串,您需要使用RewriteCond

RewriteEngine on


RewriteCond %{THE_REQUEST} /page\.asp\?code=([^&]+)&id=.+ [NC]
RewriteRule ^ /page.php?code=%1 [L,R]