温馨提示×

ubuntu apache2如何设置端口

小樊
41
2026-08-16 19:46:22
栏目: 智能运维

在 Ubuntu 上设置 Apache2 的端口,主要涉及 修改监听端口虚拟主机(VirtualHost)配置。下面按常见场景一步步说明。


一、修改 Apache2 监听端口

1️⃣ 修改监听端口配置文件

Apache2 的监听端口在:

/etc/apache2/ports.conf

编辑它:

sudo nano /etc/apache2/ports.conf

默认内容类似:

Listen 80

2️⃣ 修改为你想要的端口(例如 8080)

Listen 8080

如果你想同时监听多个端口:

Listen 80
Listen 8080

保存后退出(Ctrl+O → Enter → Ctrl+X)


二、修改虚拟主机(VirtualHost)端口

1️⃣ 编辑站点配置文件

默认站点配置一般在:

/etc/apache2/sites-enabled/000-default.conf

或者:

/etc/apache2/sites-available/your-site.conf

编辑:

sudo nano /etc/apache2/sites-enabled/000-default.conf

2️⃣ 修改 <VirtualHost> 端口

例如改为 8080:

<VirtualHost *:8080>
    DocumentRoot /var/www/html
    # 其他配置
</VirtualHost>

如果监听多个端口,可以写多个 VirtualHost:

<VirtualHost *:80>
    DocumentRoot /var/www/html
</VirtualHost>

<VirtualHost *:8080>
    DocumentRoot /var/www/html2
</VirtualHost>

三、检查配置并重启 Apache2

1️⃣ 检查配置是否正确

sudo apache2ctl configtest

看到 Syntax OK 表示没问题。

2️⃣ 重启 Apache2

sudo systemctl restart apache2

四、防火墙放行端口(非常重要)

如果使用 UFW 防火墙:

sudo ufw allow 8080/tcp

查看状态:

sudo ufw status

五、验证是否生效

浏览器访问:

http://服务器IP:8080

或服务器本地测试:

curl http://localhost:8080

六、常见端口设置场景

✅ 1. 非 80 端口(如 8080)

适合:

  • 测试环境
  • 多服务共存
  • 云服务器避免冲突

✅ 2. 使用 443(HTTPS)

Listen 443
<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /path/to/cert.crt
    SSLCertificateKeyFile /path/to/key.key
</VirtualHost>

七、常见问题

❌ 端口被占用

查看占用情况:

sudo ss -tulnp | grep 8080

❌ 访问不了

检查:

  • 防火墙
  • 云服务器安全组
  • Apache 是否监听正确端口

如果你愿意,可以告诉我:

  • Ubuntu 版本(20.04 / 22.04 / 24.04)
  • 想用 哪个端口
  • 是否要 多端口 / HTTPS / 多站点

我可以给你一份 完全可直接用的配置文件

0