我的.htaccess
中有以下规则RewriteRule ^([\da-z]+)/([\da-z]+)/(\d+)/?$ index.php?office=$1&page=$2&news_id=$3 [L,QSA,NC]
RewriteRule ^([\da-z]+)/([\da-z]+)/?$ index.php?office=$1&page=$2 [L,QSA,NC]
当我有一个网址时:www.test.com/media/continuous-training它不会向变量发送连续训练。如果我不使用短划线或下划线,一切都很好。
我认为问题在于我的规则中的正则表达式,但不确定如何解决它。
谢谢!
答案 0 :(得分:1)
您需要将-
和_
添加到角色类中。使用此:
RewriteRule ^([\da-z_-]+)/([\da-z_-]+) ...
答案 1 :(得分:0)
您可能最好在与[W-]
匹配的角色类中使用[A-Za-z0-9_-]
RewriteRule ^([\w-]+)/([\w-]+)/(\d+)/?$ index.php?office=$1&page=$2&news_id=$3 [L,QSA]
RewriteRule ^([\w-]+)/([\w-]+)/?$ index.php?office=$1&page=$2 [L,QSA]