scydesky 2025-09-18 10:32 采纳率: 100%
浏览 8
已结题

nginx配置 外网去掉端口号直接域名访问

请教大家一个问题

局域网有台服务1.5,通过路由器端口映射到了公网访问,公网80被封了,用了86端口访问,现在域名解析公网地址后访问需要加端口号才能访问到1.5的网页,有没有办法在外网去掉端口号直接域名访问 ,nginx是应该部署在1.5的服务器上吗?

  • 写回答

4条回答 默认 最新

  • 檀越@新空间 2025-09-18 10:33
    关注

    上午好☀️☀️☀️️
    本答案参考通义千问

    你的问题是一个典型的 Nginx 反向代理配置 问题,目的是在外网访问时通过域名直接访问无需添加端口号。以下是详细解决方案和步骤说明。


    ✅ 问题总结:

    • 局域网内有一台服务(假设为 192.168.1.5),提供网页服务。
    • 通过路由器将公网 IP 的 86 端口 映射到该服务。
    • 域名已解析到公网 IP,但访问时需要加 :86 才能访问,希望去掉端口号。
    • 你问:是否应该将 Nginx 部署在 1.5 服务器上?

    ✅ 解决方案

    1. 部署 Nginx 在公网服务器上

    建议将 Nginx 部署在公网服务器上,而不是局域网的 1.5 服务器。

    因为:

    • 如果 Nginx 部署在局域网中,外网无法直接访问它。
    • 而如果你将 Nginx 部署在公网服务器上,它可以作为反向代理,接收外网请求,并转发到局域网内的服务(如 1.5:86)。

    2. Nginx 配置示例

    以下是一个标准的 Nginx 配置文件示例,用于实现 外网通过域名访问,不带端口号

    server {
        listen 80;  # 或者 443(如果使用 HTTPS)
        server_name yourdomain.com;
    
        location / {
            proxy_pass http://192.168.1.5:86;  # 将请求转发到局域网内的服务
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }
    

    注意:

    • 请将 yourdomain.com 替换为你的实际域名。
    • 如果使用 HTTPS,请配置 SSL 证书。
    • 确保公网服务器的防火墙允许 80(或 443)端口访问。

    3. 确保域名正确解析

    • 使用 ping yourdomain.com 检查域名是否解析到公网 IP。
    • 使用 nslookup yourdomain.com 或在线工具验证 DNS 解析。

    4. 重启 Nginx 服务

    执行以下命令使配置生效:

    sudo nginx -t  # 检查配置是否有语法错误
    sudo systemctl restart nginx  # 重启 Nginx
    

    5. 测试访问

    在浏览器中输入:

    http://yourdomain.com
    

    如果一切正常,你应该可以直接访问局域网中的服务,无需添加端口号


    ✅ 总结

    | 步骤 | 内容 | |------|------| | 1 | 将 Nginx 部署在公网服务器上,而不是局域网的 1.5 服务器。 | | 2 | 编写 Nginx 配置文件,监听 80 端口,将请求反向代理到 192.168.1.5:86。 | | 3 | 确保域名正确解析到公网 IP。 | | 4 | 重启 Nginx 服务并测试访问。 |


    ✅ 注意事项

    • 如果你的公网 IP 是动态的,建议使用 DDNS(动态域名解析服务)来绑定域名。
    • 如果你使用的是 HTTPS,记得配置 SSL 证书(如 Let's Encrypt)。
    • 确保局域网内的服务(1.5)对公网服务器开放了 86 端口的访问权限(如通过防火墙或路由器设置)。

    如有更多关于 Nginx 配置、HTTPS 设置或防火墙规则的问题,欢迎继续提问!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 9月26日
  • 已采纳回答 9月18日
  • 创建了问题 9月18日