在Windows下可通过为网卡添加多个IPv4地址,并在Nginx配置中用不同listen IP:port绑定各站点,实现基于IP的站点隔离;需手动配置IP、正确设置server块、检查防火墙与监听状态。

在 Windows 下让 Nginx 为不同站点绑定不同 IP 地址,本质是利用系统已配置的多个本地 IP(如 192.168.1.100、192.168.1.101),再通过 server 块中 listen IP:port 明确指定监听地址。这种方式天然隔离,无需域名解析或端口区分,适合测试环境或多网卡服务器场景。
前提:系统需有多个可用 IPv4 地址
Windows 不像 Linux 默认支持单网卡多 IP,需手动添加:
- 打开“网络连接” → 右键当前网卡 → “属性” → 双击“Internet 协议版本 4 (TCP/IPv4)”
- 点击“高级” → 在“IP 地址”下方点击“添加” → 输入第二个 IP(如 192.168.1.101)和子网掩码(通常 255.255.255.0)→ 确定保存
- 重复操作可添加更多 IP(如 192.168.1.102、192.168.1.103)
- 打开命令提示符,执行
ipconfig,确认新增 IP 已列出且状态正常
配置 nginx.conf 中的多 IP server 块
编辑 C:
ginxconf
ginx.conf,在 http 块内添加独立的 server 配置,每个绑定唯一 IP 和对应根目录:
通过 SSH 隧道从 Android 设备在互联网上对 Windows PC 实现完整远程控制的设置与使用指南,适用于远程桌面访问、安全 RDP 等。
server {
listen 192.168.1.100:80;
server_name _;
root C:/nginx/html/site-a;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
server {
listen 192.168.1.101:80;
server_name _;
root C:/nginx/html/site-b;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
注意:不要写 server_name localhost 或具体域名,用 _ 即可;两个 server 的 listen 必须使用不同 IP,端口可相同(如都用 80);root 路径请用正斜杠 / 或双反斜杠 \,避免单反斜杠转义问题。
准备站点文件与启动验证
按配置创建对应目录并放入首页文件:
- 新建文件夹:
C: ginxhtmlsite-a和C: ginxhtmlsite-b - 分别在其中放入
index.html,内容可简单写<h1>Site A</h1>和<h1>Site B</h1> - 以管理员身份运行命令提示符,进入
C: ginx,执行:nginx -t(检查配置语法)→ 成功后再执行start nginx - 浏览器分别访问
http://192.168.1.100和http://192.168.1.101,应看到各自页面
常见问题处理
若访问失败,优先排查以下几点:
- 防火墙是否放行对应 IP 的 80 端口(Windows Defender 防火墙 → 高级设置 → 入站规则 → 新建规则 → 端口 → TCP 80 → 作用域中填入对应 IP)
- Nginx 是否真正监听了该 IP:命令行执行
netstat -ano | findstr :80,确认输出中包含192.168.1.100:80和192.168.1.101:80 - 配置修改后未重载:执行
nginx -s reload,而非仅重启服务 - 路径含中文或空格会导致 403 错误,请确保
root路径全为英文、无空格、权限可读

















