htaccess重写规则不适用于破折号?

时间:2009-10-27 23:18:51

标签: url-rewriting

我的htaccess规则无法使用破折号重写:

RewriteRule ^([A-Za-z]+)$ index.php?do=$1 [QSA]

所以,www.domain.com/rules有效,但www.domain.com/about-us没有

我已经确认www.domain.com/index.php?do=about-us有效,所以它肯定是一个重写问题。

感谢。

2 个答案:

答案 0 :(得分:6)

您的正则表达式不包括破折号检查 - 尝试:

RewriteRule ^([A-Za-z\-]+)$ index.php?do=$1 [QSA]

答案 1 :(得分:5)

你的正则表达式仅采用a-z和A-Z,将其更改为[A-Za-z \ - ],因此它将包含 - 字符