1

我不明白。

这条规则有效

RewriteRule ^([-a-zA-Z0-9-]+)/index.html$ index.phpXXpage=$1 [L]

这条规则不起作用

RewriteRule ^([-a-zA-Z0-9-]+)/index.html$ index.php?page=$1 [L]

好的,问题是问号。但为什么这条规则不起作用?

RewriteRule ^([-a-zA-Z0-9-]+)/index.html$ index.php\?page=$1 [L]

如何在 modrwewrte 规则中使用问号?

4

1 回答 1

1

首先,您的正则表达式具有包含两次连字符的字符类。这条规则应该适合你:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule ^([a-z0-9-]+)/index\.html$ /index.php?page=$1 [L,NC,QSA]
于 2013-09-23T11:16:59.293 回答