2012-06-11 136 views
4

我累拿到第一个斜杠前的所有字符串时的URL中使用此代码以“字词1”或“单词2”,和IM结束:Apache的正则表达式的重写规则“或”语法

RewriteRule ^(.+)/word1|word2/?$   index.php?query=$1 [NC] 

我没有任何与他的两端有“word1”的url有关的问题,但如果url以“word2”结尾,Apache不会返回任何值给“查询”变量

回答

5

您需要将变化表达:

^(.+)/(?:word1|word2)/?$ 

如果没有分组表达式表示:

^(.+)/word1word2/?$

+0

谢谢你的回答,做工精细:-) – Hamidreza

+1

什么是平均__:__ – Hamidreza

+2

' (?:regex)'是一个非捕获组,与'(regex)'相同,只是它没有捕获任何东西。 – Qtax

2

用途:

RewriteRule ^(.+)/(word1|word2)/?$