htaccess使用查询字符串参数更改将ASP重写为PHP

时间:2013-09-18 21:57:10

标签: .htaccess mod-rewrite

我最近从ASP站点更改为PHP站点,我需要将旧的URL样式重写为新样式。例如:

www.mydomain.com/store/list_view.asp?itemid=1000645

对此:

www.mydomain.com/store/list_view.php?id=1000645

到目前为止,我可以使用以下命令获取ASP请求重定向到PHP页面:

RewriteEngine on
RewriteRule ^(.*)\.asp$ /$1.php [R=301,NC] 

我很感激您提供的任何帮助,如果可能的话,我会解释它是如何运作的,我是新手使用重定向和.htaccess

1 个答案:

答案 0 :(得分:2)

启用mod_rewrite.htaccesshttpd.conf,然后将此代码放在.htaccess DOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{QUERY_STRING} ^itemid=(.+)$ [NC]
RewriteRule ^(.+?)\.asp$ $1.php?id=%1 [R=301,L,NC]

它与QUERY_STRING参数的itemid匹配,并通过%1RewriteCond中捕获它的值。然后,它会.asp替换.php并添加id=%1以完成目标网址。