如何更改我的网址

时间:2014-11-23 00:32:29

标签: .htaccess mod-rewrite

我有这个网址

http://example.com/profile.php?u=78 我想把它改成像这样

http://example.com/78/ 我该怎么办? 请帮忙 提前致谢

2 个答案:

答案 0 :(得分:0)

您可以在根目录中使用此.htaccess

RewriteEngine on 
RewriteRule ^(\d+)/?$ /profile.php?u=$1 [L]

RewriteCond %{QUERY_STRING}  ^u=(\d+)$
RewriteRule ^profile.php$ /%1/? [R=302,L]

当效果正常时,将[R=302,L]更改为[R=301,L]

答案 1 :(得分:0)

尝试将http://example.com/profile.php?u=78重写为http://example.com/78/

RewriteEngine On
RewriteCond %{QUERY_STRING} ^(\w+)=(\w+)$
RewriteRule ^profile.php$ /%2/
RewriteRule (.*) $1? [R=permanent]

逐行说明:

  1. 启用重写功能
  2. 指定条件以确保查询字符串采用foo=bar形式,以便应用以下规则。
  3. profile.php?foo=bar重写为/bar/?foo=bar
  4. 删除可能仍会附加到新网址的所有查询字符串,例如/bar/?foo=bar/。此规则基本上用整个路径(。*)替换自身($ 1),并清空查询字符串(?)。 [R=permanent]执行永久重定向(301)。
  5. 此外,如前所述,请确保http://example.com/78/是有效的网址。