我正在尝试编写htaccess规则以转换以下形式的URL:
http://example.com/PageViewer.aspx?id=348
收件人:
http://example.com/?page_id=15348
数字15是常数,后跟原始URL中的id值。
我尝试了以下规则:
RewriteCond %{QUERY_STRING} ^(.*)\id=(.*)$
RewriteRule ^(.*)PageViewer\.aspx$ $1?%1page_id=15%2
但是,我得到的结果是这样的:
http://example.com/page_id=15348/?id=348
为什么规则中使用的问号不存在?为什么查询字符串显示在结果URL的末尾?我不完全了解htaccess重写规则...
答案 0 :(得分:1)
使用[NE]标志解决
RewriteCond %{QUERY_STRING} ^(.*)\id=(.*)$
RewriteRule ^(.*)PageViewer\.aspx$ $1?%1page_id=15%2 [NE]