2011-01-11 33 views
2

我需要一个规则,当有人类型.htaccess的重写规则用了一段

domain.com/finddomain.com它指向domain.com?q=finddomain.com

很简单,但期在“finddomain.com”导致我的规则失败。

我的原则是:

RewriteRule ^([A-Za-z0-9.]+)(/)?$ index.php?q=$1 

的 “”搞砸了。

任何帮助非常感谢!

+2

尝试使用反斜杠(\\)转义它?句点是有效的正则表达式元字符。 – 2011-01-11 22:26:18

回答

3

试图逃跑的点,因为点在正则表达式表示“任何东西”

欢呼

13

你必须用反斜杠\.逃跑期间,因为期间代表任何字符。

因此,您的RegEx ^([A-Za-z0-9.]+)(/)?$确实会匹配每个字符串。它应该是^([A-Za-z0-9\.]+)/?$(或^([A-Za-z0-9\.]+\.[a-zA-Z]+)/?$仅用于与TLD匹配域)。

+0

非常感谢!现在工作很好:) – Armin 2011-01-12 07:32:29