Nginx 如何配置反向代理隐藏 url 端口?

发布于 2022-09-05 10:51:49 字数 347 浏览 8 评论 0

Nginx 如何配置反向代理隐藏 url 端口?

如下:

server{

listen 8011;
server_name www.up.com;
location / {
        proxy_pass   http://127.0.0.1:1031;
}

}


如果 listen 的是 8011 端口,反向代理转发到 1031 端口,那么 www.up.com:8011 和 www.up.com:1031 都可以正常访问。

如果这里 listen 的是 80 端口,那么只能 www.up.com:1031 可以正常访问

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

苏别ゝ 2022-09-12 10:51:51

题主的意思是隐藏1031端口吧?那就要在1031端口对应的服务上面配置了,和nginx没关系。
可以让1031端口的服务只监听127.0.0.1即可,不要监听0.0.0.0。
或者用个防火墙配置把外部对1031端口的都deny掉也可以。

桜花祭 2022-09-12 10:51:49

问题解决了,是 nginx 配置的原因,指定 nginx.conf 文件并重启 nginx 就好了。这样配置没问题:

server {
    listen 80;
    server_name www.up.com;
    location / {
            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_set_header Host            $http_host;
            proxy_pass   http://127.0.0.1:1031;
    }
}

访问 www.up.com 实际就请求 1031 端口的 golang 服务,不需要 url 上带端口号了。

表情可笑 2022-09-12 10:51:49

要指定反向代理的Host,用下面的配置

proxy_set_header Host       $proxy_host;

$proxy_host 参数你可以直接写固定值。

岛徒 2022-09-12 10:51:49

不太清楚想问什么,隐藏1031端口不被外部访问?可以用防火墙控制,如果防火墙只开80端口,外部就只能访问80端口。也可以将使用1031端口的应用部署在其他机器上,这台机器只能通过内部ip访问。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文