Racknerd VPS 开放 80-443 端口,解决 Nginx 无法访问的问题

选择在 Racknerd 的海外 VPS 上搭建服务时,遇到了使用 CentOS 7 系统安装 Nginx 后,外网无法正常访问的问题。这里记录一下解决方案,方便大家参考。

👉 【建议收藏】2025年Racknerd最新优惠套餐整理汇总 - 每日更新可用活动优惠

1. 测试 Nginx 是否安装成功

首先,我们需要确认 Nginx 已经正确安装并运行。可以使用以下命令测试本地访问:

bash $ wget http://127.0.0.1 --2025-01-03 20:11:34-- http://127.0.0.1/ 正在连接 127.0.0.1:80... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度:615 [text/html] 正在保存至: “index.html” 2025-01-03 20:11:34 (83.5 MB/s) - 已保存 “index.html” [615/615]

如果能返回 200 OK,说明 Nginx 已经安装成功。

2. 检查 80 和 443 端口是否开放

通过 firewall-cmd 命令可以查询端口状态:

bash $ firewall-cmd --query-port=80/tcp output: no $ firewall-cmd --query-port=443/tcp output: no

如果返回 no,表示端口尚未开放,需要手动配置。

3. 开放防火墙端口

使用以下命令开放端口:

bash $ firewall-cmd --permanent --add-port=80/tcp output: success $ firewall-cmd --permanent --add-port=443/tcp output: success

添加端口后务必保存配置,以确保规则持久化。

4. 重启防火墙

最后,重启防火墙以使规则生效:

bash $ firewall-cmd --reload output: success

端口开放完成后,外网应该可以正常访问 Nginx 服务了。

常用防火墙操作命令汇总

以下是一些与 CentOS 防火墙相关的常用命令,便于日常维护和管理:

  • 查看防火墙服务状态

    bash $ systemctl status firewalld

  • 查看防火墙状态

    bash $ firewall-cmd --state

  • 查看所有防火墙规则

    bash $ firewall-cmd --list-all

  • 查询端口是否开放

    bash $ firewall-cmd --query-port=19999/tcp

  • 开放指定端口(比如 80 端口)

    bash $ firewall-cmd --permanent --add-port=80/tcp

  • 关闭指定端口

    bash $ firewall-cmd --permanent --remove-port=80/tcp

  • 重启防火墙(修改配置后必须重启)

    bash $ firewall-cmd --reload

通过以上步骤,可以轻松解决 Racknerd VPS 上 Nginx 无法访问的常见问题。如果还有其他相关问题,可以根据具体情况进一步调整配置。