Htaccess使用PERIOD重写规则

Arm*_*min 2 .htaccess

当有人打字时,我需要一个规则

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

非常简单,但"finddomain.com"中的句号导致我的规则失败.

我的规则是:

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

"." 搞砸了.

任何帮助深表感谢!

Flo*_*ern 13

你必须用反斜杠来逃避这个时期,\.因为这段时间代表任何角色.

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

  • @Armin:给你的东西:[如何接受答案?](http://meta.stackexchange.com/questions/5234/5235#5235) (9认同)