我希望Lighttpd为内部客户端显示不同的页面,为其他人显示默认页面。
在these two个链接之间,我知道我想要做什么,但我不确定RegEx我需要使用[http://] 192.168的主机名来限制客户端0.0。?或[http:// 192.168。?。?到另一页。我一直在lighttpd.conf中使用以下代码:
server.document-root = "/var/www/sites"
$HTTP["host"] == "RegExHere" {
server.document-root = "/var/www/setup"
}
...对于'RegExHere',我尝试了各种尝试,例如:
192\.168\.0\.\d{1,3}(\s|$))+
192\.168\.
[192.168.[0-9]+.]
192\.168\.[0-9]+.[0-9]+$
......及其各种组合。我不知道我是否接近,但不管它只显示我的默认页面。
有人可以告诉我哪里出错吗?
提前致谢!
答案 0 :(得分:1)
您必须使用=〜语法来匹配正则表达式。将$HTTP["host"] == "RegExHere"
更改为$HTTP["host"] =~ "RegExHere"
,其中一个正则表达式应该有效。 ^192\.168\.\d{1,3}\.\d{1,3}$
应该这样做。
在其上发现了这篇文章http://blog.evanweaver.com/2006/06/07/regular-expressions-in-lighttpd-host-redirects/
编辑:我认为您需要使用$ HTTP [“remoteip”]而不是$ HTTP [“host”],看起来您可以在没有正则表达式的情况下使用它。
$HTTP["remoteip"] == "10.0.0.0/8" { url.access-deny = ("") }
$HTTP["remoteip"] == "127.0.0.0/8" { url.access-deny = ("") }