You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows Server上Nginx部署Django后内网无法访问的解决方案咨询

内网访问问题的解决方案

1. 调整Django服务的绑定地址

Django默认仅监听localhost:8000,内网其他设备无法访问这个本地地址。启动服务时需指定绑定到服务器内网IP或0.0.0.0(监听所有网卡):

python manage.py runserver 0.0.0.0:8000

若使用Gunicorn等WSGI服务器,同样需绑定到0.0.0.0:

gunicorn --bind 0.0.0.0:8000 project.wsgi

2. 优化Nginx监听与代理配置

确保Nginx监听所有网卡的80端口,同时代理目标指向可被内网访问的地址:

server {
    listen 0.0.0.0:80;
    server_name 192.168.xxx.xx;

    location /static {
        alias D:/project/apps/media;
    }

    location /media/ {
        alias D:/project/apps/media;
    }
        
    location / {
        proxy_pass http://0.0.0.0:8000;
    }
}

3. 配置Windows Server防火墙规则

Windows防火墙默认拦截80端口的入站请求,需添加允许规则:

  • 打开「Windows Defender防火墙」→「高级设置」
  • 进入「入站规则」→「新建规则」
  • 选择「端口」,指定TCP 80端口
  • 选择「允许连接」,勾选「域、专用」(适配内网环境)
  • 命名规则后完成配置

4. 验证网络连通性

  • 在内网其他PC上执行ping 192.168.xxx.xx,确认服务器网络可达
  • 用服务器端ipconfig命令核对内网IP是否正确,确保服务器与其他PC处于同一网段

5. 重启Nginx服务

修改配置后验证语法并重启:

cd c:/nginx
nginx -t  # 验证配置语法
nginx -s reload  # 重启Nginx

内容的提问来源于stack exchange,提问作者Lucas Mgana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 13:03:14