You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EC2 Ubuntu环境启动Nginx遇端口绑定失败错误求助

解决Nginx端口80绑定失败的问题

1. 排查端口80占用情况

错误代码98对应EADDRINUSE,说明端口80已被其他进程占用,先找出占用进程:

sudo lsof -i :80
# 或用netstat命令
sudo netstat -tulpn | grep :80

根据输出结果停止占用进程,比如进程是apache2:

sudo systemctl stop apache2
# 若为其他进程,替换<PID>为对应进程号
sudo kill -9 <PID>

2. 检查Nginx配置是否重复监听端口80

你的自定义配置已监听80和[::]:80,需额外检查:

  • /etc/nginx/nginx.conf主配置中是否有重复的监听规则
  • /etc/nginx/sites-enabled/目录下的其他配置文件,是否存在重复监听80端口的server块
    如果发现重复,删除或修改冲突配置。

3. 验证Nginx配置语法

先确认配置无语法错误,避免因配置问题导致绑定失败:

sudo nginx -t

若报错,根据提示修复对应配置文件。

4. 处理SELinux限制(针对RHEL/CentOS系统)

如果EC2实例用的是CentOS/RHEL系列,SELinux可能阻止Nginx绑定端口,临时关闭测试:

sudo setenforce 0

若关闭后Nginx能正常启动,再永久添加端口规则:

sudo semanage port -a -t http_port_t -p tcp 80
sudo setenforce 1

5. 彻底重启Nginx服务

若存在残留的Nginx进程,先彻底清理再启动:

sudo systemctl stop nginx
sudo pkill -f nginx
sudo systemctl start nginx

注:AWS安全组属于外部访问规则,和Nginx内部端口绑定失败无直接关联,优先解决上述内部问题即可。

内容的提问来源于stack exchange,提问作者ali60vip

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 02:35:19