我在部署时遇到了一些问题nginx。我有另一个服务在端口 80 上运行,现在我想安装 nginx 并使用具有唯一主机名端口 80 的服务器块。但是当我启动 nginx 服务时,出现此错误。
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
我该如何修复它?谢谢!
答案1
仅指定唯一的主机名是不够的。主机名只能确定连接被接受后,所以它不是 Nginx 在绑定主套接字时可以使用的东西。
如果您有多个 IP 地址,则可以将两个程序配置为侦听不同的地址。如果没有,则需要使用反向代理,其中一个程序接收所有端口 80 连接,保留一些请求,并将其他请求转发给另一个程序。(Nginx 本身可以使用 proxy_pass 成为反向代理。)