一个漂亮的URL的htaccess重写规则

时间:2011-05-16 17:45:58

标签: apache .htaccess rewrite clean-urls

我需要像这样打开一个查询字符串:

http://localhost/view.php?id=12345

进入这个:

http://localhost/12345

但是,我还计划在搜索引擎的URL末尾添加一个字符串,以便从中获益:

http://localhost/12345/NameOfTheSkin

有点像Wowhead如何做他们的网址:

http://www.wowhead.com/item=49623/shadowmourne

请注意如何将字符串“shadowmourne”更改为任何内容,它仍然指向项ID 49623

基本上,我需要忽略最后的字符串。

欢迎任何帮助,欢呼。 :)

1 个答案:

答案 0 :(得分:5)

RewriteRule ^/(\d+)/?.*$ /view.php?id=$1 [L]

这会将http://host/1234/some-texthttp://host/1234重写为http://host/view.php?id=1234

详细说明:

^   -- matches at the start of the string
(   -- start match group
\d+ -- match one or more digits
)   -- end match group
/?  -- match 0 or 1 slash
.*  -- match any character 0 or more times
$   -- matches at the end of the string

访问regular-expressions.info以获取regexp的完整指南。