阿里云服务器新端口上线SOP(Windows+Nginx+HTTPS)
- 新端口上线排查指南
- 一句话原则
- 标准操作顺序(每次新开端口都照做)
-
- [Step 1 确认 Nginx 已监听端口(在服务器里)](#Step 1 确认 Nginx 已监听端口(在服务器里))
- [Step 2 服务器本机测试(区分 Nginx 问题还是网络问题)](#Step 2 服务器本机测试(区分 Nginx 问题还是网络问题))
- [Step 3 放行 Windows 防火墙(最容易忘)](#Step 3 放行 Windows 防火墙(最容易忘))
- [Step 4 放行云安全组(第二容易忘)](#Step 4 放行云安全组(第二容易忘))
- [Step 5 外网访问](#Step 5 外网访问)
- 常用自检命令
- [故障现象 => 对应排查层级](#故障现象 => 对应排查层级)
- 新端口上线自检清单
- 常见误区
- 记忆版
新端口上线排查指南
适用:Windows 云主机 + Nginx + HTTPS + 前端项目(Vite / Vue / 任意 SPA)
目标:避免把"端口未放通"误判成 Nginx / 前端问题。
一句话原则
先本机,后防火墙,再安全组,最后浏览器。
端口从"代码写好"到"外网可访问",必须依次通过:
- Nginx 是否监听端口
- 服务器本机是否能访问
- Windows 防火墙是否放行
- 云安全组是否放行
- 浏览器访问方式是否正确
任意一层不通,外网都打不开。
标准操作顺序(每次新开端口都照做)
Step 1 确认 Nginx 已监听端口(在服务器里)
bashnetstat -ano | findstr 8081看到
LISTENING才算端口真的起来。
- 没输出:先查 Nginx 配置 / 是否 reload
- 有输出:进入下一步
Step 2 服务器本机测试(区分 Nginx 问题还是网络问题)
bashcurl -k https://localhost:8081
- 访问失败:优先查 Nginx / SSL / 站点目录
- 能返回内容:说明 Nginx 没问题,继续下一步
这一步成功后,后面的问题都不是 Nginx。
Step 3 放行 Windows 防火墙(最容易忘)
UI界面写法
Win + R后,输入:wf.msc打开"高级安全Windows Defender防火墙"面板
接着点击【入站规则】=>【新建入站规则向导】=>【端口】(如果鼠标选择不上,使用上下键选择)
项 值 类型 TCP 端口 8081 操作 允许连接 配置文件 全选
指令写法
查看所有「入站允许」规则(含端口)
bashnetsh advfirewall firewall show rule name=all信息很多,但能看到每条规则的:
- 协议(TCP/UDP)
- 本地端口(LocalPort)
- 是否允许(Action)
只筛选包含端口信息的规则(推荐)
bashnetsh advfirewall firewall show rule name=all | findstr /i "LocalPort TCP UDP"会直接把端口号筛出来。
查看规则是否已存在
bashnetsh advfirewall firewall show rule name="Nginx 8081"
查看某个端口是否已放行(最常用)
bashnetsh advfirewall firewall show rule name=all | findstr 8081有输出 = 已存在规则
没输出 = 防火墙没放行
单独放行一个端口
bashnetsh advfirewall firewall add rule name="Nginx 8081" dir=in action=allow protocol=TCP localport=8081
一次性放行多个端口(非常实用)
bashnetsh advfirewall firewall add rule name="Nginx-Ports" dir=in action=allow protocol=TCP localport=80,443,8081,3000
通过规则名称删除
bashnetsh advfirewall firewall delete rule name="Nginx 8081"
Step 4 放行云安全组(第二容易忘)
阿里云平台控制台 => 安全组 => 新增规则
云服务器 ECS / 安全组 => 安全组 ID / 名称 || 管理规则 => 安全组详情 => 入方向 => 增加规则
项 值 协议 TCP 端口 8081 来源 0.0.0.0/0 动作 允许 等待 10~30 秒生效。
Step 5 外网访问
texthttps://域名:8081注意:
- http / https 不要写错
- 端口不要漏
常用自检命令
查看端口监听
bashnetstat -ano | findstr 8081
本机测试 HTTPS
bashcurl -k https://localhost:8081
检查 Nginx 配置
bashnginx -t
重载 Nginx
bashnginx -s reload
故障现象 => 对应排查层级
现象 优先排查 netstat 无监听 Nginx 本机 curl 不通 Nginx / SSL 本机 curl 通,外网不通 防火墙 / 安全组 ERR_CONNECTION_RESET 协议 / 端口 / 防火墙 404 Nginx 站点目录 / 路由 白屏 前端打包路径 / 路由模式
新端口上线自检清单
text端口号:8081 [ ] Nginx 是否已配置并 reload [ ] netstat 是否看到 LISTENING [ ] 本机 curl 是否成功 [ ] Windows 防火墙是否放行 [ ] 云安全组是否放行 [ ] 浏览器访问地址是否正确
常见误区
- 浏览器打不开 ≠ 一定是 Nginx 错
- 安全组开了 ≠ 一定能访问(Windows 可能拦截)
- 本机能访问 ≠ 外网一定能访问
记忆版
先看端口有没有起来 => 本机能不能访问 => 防火墙 => 安全组 => 浏览器
按这个顺序,基本不会再误判问题来源。