Lighttpd vhost 正则表达式

Lighttpd vhost 正则表达式

我的虚拟主机在使用正则表达式时遇到了问题。当我使用以下代码时,出现 404 未找到错误:

$HTTP["host"] =~ "(^|\.)example\.com$" {
...
}

但是,当我明确将其设置为以下内容时,我可以访问我的网站:

$HTTP["host"] == "example.com" {
...
}

有人知道为什么会发生这种情况吗?文档相当稀少。

答案1

我觉得我找到了问题所在。我使用的是端口 8080,而不是端口 80,而且我看到了最底部的隐藏文本文档页面其中指出:

(对您不起作用?如果您没有在默认端口上运行,$HTTP["host"] 将附加端口号,并且上述正则表达式将与其不匹配,因为尾随的“$”表示“字符串以此方式结束”。)

答案2

您已经发现问题;现在使用($|:)(:[0-9]+)?$代替 来修复它$

相关内容