让 lighttpd 监听多个端口

scu*_*bbo 8 lighttpd

我有一个在 AWS EC2 实例上运行的 lighttpd 服务器。它可以在端口 80(或任何其他端口,如果我更改 /etc/lighttpd/lighttpd.conf 中的 server.port)上提供服务,没有任何问题。但是,当我在不同的端口(例如 8080)上提供替代文档根目录时,浏览器永远无法连接到服务器。

我的 lighttpd.conf 文件的相关部分:

server.port = 80

##
## Use IPv6?
##
server.use-ipv6 = "disable"

##
## bind to a specific IP
##
#server.bind = "localhost"

##
## Run as a different username/groupname.
## This requires root permissions during startup. 
##
server.username  = "lighttpd"
server.groupname = "lighttpd"

## 
## enable core files.
##
#server.core-files = "disable"

##
## Document root
##
server.document-root = server_root + "/release"
$SERVER["socket"] == ":8080" {
        server.document-root = server_root + "/dev"
}
Run Code Online (Sandbox Code Playgroud)

完整文件在这里

根植于server_root + "/dev"工作正常的站点- 我已经通过反转它们的端口分配进行了测试,在这种情况下, /dev 在 :80 上可以正常加载并且找不到 /release 。

我已经阅读了许多指南(例如这里官方文档这里等),但无济于事。第一个提到可能存在防火墙冲突,但我不知道如何在 EC2 上解决该问题,而且我可以server.port=8080毫无问题地设置这一事实让我认为这不是问题。

这两个文件夹都归我的lighttpd用户所有,我的用户在这两个文件夹中都拥有完全权限。

<my address>:8080.

scu*_*bbo 5

哎呀,我现在可以回答我自己的问题了。

这确实是一个防火墙问题,但修复起来非常简单 - 转到 console.aws.amazon.com(如有必要,请登录),选择相关的安全组,然后添加允许该端口上传入流量的防火墙规则- 如果您希望限制访问,则可以来自特定来源;如果您希望限制访问,则可以来自 0.0.0.0/0。