我想使用mod_rewrite来更改旧网址。例如,我想要
http://www.example.com/lyrics?id=393
要改为
http://www.example.com/lyrics/393
我尝试了以下内容:
RewriteRule ^lyrics\.aspx?$ http://www.example.com/lyrics/ [QSA,L]
但输出
http://www.example.com/lyrics/?id=393
谢谢, AB
答案 0 :(得分:1)
尝试:
RewriteRule ^/?lyrics/([0-9]+)/? /lyrics.aspx?id=$1 [L]
然后重定向旧网址:
RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ /lyrics\.aspx\?id=([0-9]+)
RewriteRule ^ /lyrics/%2? [L,R=301]
答案 1 :(得分:-1)
我遇到了以下网站: http://forums.digitalpoint.com/showthread.php?t=16014
读完之后,这才最终为我效劳。
RewriteCond %{QUERY_STRING} ^id=(.*)$
RewriteRule ^lyrics\.aspx$ /lyrics/%1/? [R=301,L]
现在,而不是像这样的网址:
http://www.example.com/lyrics?id=950
我现在的网址看起来像这样:
http://www.example.com/lyrics/950/.