使用Mod-Rewrite重写URL

时间:2009-12-28 21:03:43

标签: mod-rewrite

我将如何重写:

http://localhost/profile.php?user=MaFi

http://localhost/user/MaFi

3 个答案:

答案 0 :(得分:3)

如果您确实要将/profile.php?user=MaFi重定向到/user/MaFi,请尝试以下规则:

RewriteCond %{QUERY_STRING} ^(([^&]*&)*)user=([^&]+)(&+(.*))?$
RewriteRule ^profile\.php$ /user/%3?%1%5 [L,R=301]

但如果您确实要在内部将/user/MaFi重写为/profile.php?user=MaFi,请尝试以下规则:

RewriteRule ^user/([^/]+)$ profile.php?user=$1 [L]

答案 1 :(得分:2)

尝试这样的RewriteRule:

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

答案 2 :(得分:0)

yoursite.com/MaFi~yoursite.com/profile.php?user=MaFi

<a href='/MaFi'>MaFi</a>

RewriteRule ^([^.]+)$ "/profile.php?user=$1" [L]

或者也许......

yoursite.com/profile.php?user=MaFi~yoursite.com/MaFi

<a href='/profile.php?user=MaFi'>MaFi</a>

RewriteCond %{QUERY_STRING} user=(.+)
RewriteRule ^([^.]+)$ "/%1" [QSA]

我不是百分之百,但希望他们帮助。