我有一个非常新手的问题,但我自己无法解决,所以我在这里......
我有3台服务器:
Server_1 托管我的网络应用程序,其 IP 地址为 10.7.1.1
Server_2是反向代理,ip是10.7.1.2。它的服务器目的是通过 certbot 提供 https 连接,并提供 my-app.domain.com 的 server_name。 已经使用此代理配置安装了 nginx,并且效果很好! 如果我使用互联网连接并访问 my-app.domain.com 它非常适合我的应用程序!
location / {
proxy_pass http://10.7.1.1;
proxy_hide_header upgrade;
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;
access_log off;
}
location /my-app/ {
proxy_pass https://*my-app.domain.com/;
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;
proxy_set_header Authorization "Basic *************";
}
每次都会进入Server_2 nginx的默认页面.. 如果我 ping *my-app.domain.com 我有 Server_2 的 IP 地址,即 10.7.1.2 我做错了什么?
没有尝试任何花哨的东西
从
server_3中删除
proxy_set_header Host $host;
,它会为 server_2 提供错误的 服务器名称。
来自理查德史密斯评论