为内部LAN客户端设置不同的Lighttpd vhost-可能只是需要RegEx。。。?

为内部LAN客户端设置不同的Lighttpd vhost-可能只是需要RegEx。。。?,regex,lighttpd,Regex,Lighttpd,我希望Lighttpd为内部客户端显示不同的页面,为其他所有客户端显示默认页面 在链接之间,我知道我想做什么,但不确定我需要使用[http://]192.168.0.主机名来限制客户端的正则表达式。?或[http://]192.168。?。?转到另一页。我在lighttpd.conf中使用了以下代码: server.document-root = "/var/www/sites" $HTTP["host"] == "RegExHere" { server.docum

我希望Lighttpd为内部客户端显示不同的页面,为其他所有客户端显示默认页面

在链接之间,我知道我想做什么,但不确定我需要使用[http://]192.168.0.主机名来限制客户端的正则表达式。?或[http://]192.168。?。?转到另一页。我在lighttpd.conf中使用了以下代码:

server.document-root       = "/var/www/sites"

$HTTP["host"] == "RegExHere" {
        server.document-root    = "/var/www/setup"
}
…对于“Regexere”,我尝试了多种尝试,例如:

192\.168\.0\.\d{1,3}(\s|$))+
192\.168\.
[192.168.[0-9]+.]
192\.168\.[0-9]+.[0-9]+$
…及其各种组合。我不知道我是否接近,但不管怎样,它只显示默认页面

谁能告诉我哪里出了问题


提前谢谢

必须使用=~语法来匹配正则表达式。将
$HTTP[“host”]=“RegExHere”
更改为
$HTTP[“host”]=“RegExHere”
,其中一个regex应该可以工作<代码>^192\.168\.\d{1,3}\.\d{1,3}$应该这样做

在上面找到了这篇文章

编辑:我认为您需要使用$HTTP[“remoteip”]而不是$HTTP[“host”],而且看起来您不需要正则表达式也可以做到这一点

$HTTP["remoteip"] == "10.0.0.0/8" { url.access-deny = ("") }

$HTTP["remoteip"] == "127.0.0.0/8" { url.access-deny = ("") }

必须使用=~语法来匹配正则表达式。将
$HTTP[“host”]=“RegExHere”
更改为
$HTTP[“host”]=“RegExHere”
,其中一个regex应该可以工作<代码>^192\.168\.\d{1,3}\.\d{1,3}$应该这样做

在上面找到了这篇文章

编辑:我认为您需要使用$HTTP[“remoteip”]而不是$HTTP[“host”],而且看起来您不需要正则表达式也可以做到这一点

$HTTP["remoteip"] == "10.0.0.0/8" { url.access-deny = ("") }

$HTTP["remoteip"] == "127.0.0.0/8" { url.access-deny = ("") }

太棒了,谢谢你。现在看起来很明显,只是错过了这么简单的事情@德鲁斯蒂夫嘿,我更新了我的答案。我认为你也使用了错误的$HTTP变量。虽然这也可以正常工作,但我更希望在通过服务器的内部ip访问时显示专家页面,这样,如果我确实想访问外部站点,我仍然可以使用实际的域名。谢谢你的提醒,我会记下来以备将来参考!太棒了Hersha谢谢你。现在看起来很明显,只是错过了这么简单的事情@德鲁斯蒂夫嘿,我更新了我的答案。我认为你也使用了错误的$HTTP变量。虽然这也可以正常工作,但我更希望在通过服务器的内部ip访问时显示专家页面,这样,如果我确实想访问外部站点,我仍然可以使用实际的域名。谢谢你的提醒,我会记下来以备将来参考!