1

这是我的原始链接

http://localhost/xx/xx/public_html/news.php?id=7

我想把它改成

http://localhost/xx/xx/public_html/news-7-TitleOfNews.html

这是我的 htaccess

Options -Indexes 
ErrorDocument 404 www.site.com/404.html
RewriteEngine On
RewriteRule ^news-([0-9]*)(?:-([0-9a-zA-Z*]))?(?:\.html)?$ news.php?id=$1 [L]

但它不起作用(重定向到 404 页面)

4

1 回答 1

3

我想你正在寻找这个:

RewriteRule ^news-([0-9]*)(?:-[0-9a-zA-Z]*)?(?:\.html)?$ news.php?id=$1 [L]

不同之处在于*量词应该在字符类表达式之外。并且将单个字符类包装到括号中是多余的。

于 2012-12-22T17:02:26.183 回答