温馨提示×

Apache在CentOS如何修改端口

小樊
42
2026-07-20 09:19:13
栏目: 智能运维

CentOS 上修改 Apache(httpd) 的监听端口,按下面步骤操作即可(以 CentOS 7/8 为例)。


一、修改 Apache 端口配置

1. 编辑配置文件

Apache 的主配置文件通常是:

/etc/httpd/conf/httpd.conf

打开它:

vim /etc/httpd/conf/httpd.conf

2. 修改监听端口

找到这一行(默认是 80):

Listen 80

改成你想要的端口,例如 8080

Listen 8080

如果有多个端口,可以这样写:

Listen 80
Listen 8080

3. 修改虚拟主机端口(如果有)

如果你使用了 <VirtualHost>,也要同步修改,例如:

<VirtualHost *:8080>
    DocumentRoot "/var/www/html"
    ServerName example.com
</VirtualHost>

二、配置 SELinux(非常重要)

CentOS 默认启用 SELinux,如果端口不是 80/443,会被拦截。

1. 查看当前允许的 HTTP 端口

semanage port -l | grep http

2. 添加新端口(如 8080)

semanage port -a -t http_port_t -p tcp 8080

如果提示 semanage 不存在,先安装:

yum install -y policycoreutils-python-utils

三、配置防火墙(firewalld)

1. 开放新端口

firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload

2. 验证

firewall-cmd --list-ports

四、重启 Apache

systemctl restart httpd

查看状态:

systemctl status httpd

五、验证是否生效

浏览器访问:

http://服务器IP:8080

或服务器本地测试:

curl http://localhost:8080

六、常见问题

1. 改完端口无法访问?

✅ 检查顺序:

  • Apache 是否监听新端口
  • SELinux 是否放行
  • 防火墙是否放行
  • 云服务器安全组是否放行

2. 端口冲突

查看端口占用:

ss -tlnp | grep 8080

七、示例总结(8080 端口)

vim /etc/httpd/conf/httpd.conf
# Listen 8080

semanage port -a -t http_port_t -p tcp 8080
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload

systemctl restart httpd

如果你用的是 CentOS 6、Docker、或 Apache 2.4 特殊配置,可以告诉我,我可以给你更精确的方案。

0