如何使用Mod-Rewrite重写URL

时间:2014-05-15 19:16:40

标签: mod-rewrite

我将如何重写:

http://mydomain.com/?v=service
http://mydomain.com/?v=pfolio

http://mydomain.com/service
http://mydomain.com/pfolio

我尝试了很多方法,但还没弄明白。请提出建议。

我已经使用

RewriteRule ^/?v=(.*)$ /v/$1      [R=301,L]

1 个答案:

答案 0 :(得分:0)

这将是服务器配置的版本:

RewriteEngine on
RewriteCond %{QUERY_STRING} ^v=(.*)$
RewriteRule ^/$ /%1      [R=301,L]

或者,如果可能出现更多类似的查询参数:

RewriteEngine on
RewriteCond %{QUERY_STRING} ^v=([^&]*)
RewriteRule ^/$ /%1      [R=301,L,QSA]

当放置在.htaccess样式文件中时,您必须从RewriteRule中的模式中删除 /(所以只需^$)。

但我怀疑这才是你真正想要的。通常人们想要做与此相反的事情...也许你也应该解释一下你的尝试背后的想法。那么你的情况,你希望发生什么,而不是如何