我想转换像
这样的网址http://mysite.com/search/search_mgmt.php?CategoryID=1
类似
http://mysite.com/search/my-seo-friendly-url
我启用了mod_rewrite。
答案 0 :(得分:5)
你想要达到什么目的?如果某些人使用search/search_mgmt.php?CategoryID=1
访问您的网站,并且您希望将其转换为search/my-seo-friendly-url
,则必须将流量重定向到其他网址:
RewriteCond %{HTTP_HOST} ^.*$
RewriteRule ^mysite.com/search/search_mgmt.php?CategoryID=1$ http://mysite.com/search/my-seo-friendly-url [R=301,L]
使用此规则,服务器将向客户端代码301 Moved Permanently
发送Location:
标头设置为新URL。您可以将301代码更改为302(找到):[R=302,L]
。 (注意:在这种情况下,客户端会向服务器发送两个请求以获取内容。)
如果您不添加此结果说明符,那么您的服务器将只返回结果,就像使用重写的URL访问它一样。所以我猜你实际上希望用户看到你的my-seo-friendly-url
而在服务器上它会被search_mgmt.php?CategoryID=1
处理。你可以这样做:
RewriteRule ^mysite.com/search/my-seo-friendly-url$ http://mysite.com/search/search_mgmt.php?CategoryID=1