2011-01-11 35 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