想問一個nginx upstream的問題
我設定reverse proxy的proxy_pass到lan外的一個網站沒問題,
取例如下,這裡假設是xoxo網站
server {
listen 80 default_server;
listen [::]:80 default_server;
location ^~ /tw/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass https://www.xoxo.com.tw:8080;
}
}
但因為想用load balance 新增了upstream後就不行了
也是在lan外的網站,舉例如下
upstream backend {
server www.xoxo.com.tw:8080;
server www2.xoxo.com.tw:8080 backup;
}
server {
listen 80 default_server;
listen [::]:80 default_server;
location ^~ /tw/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass https://backend;
}
}
即使我在upstream只保留一個server 設定值server www.xoxo.com.tw:8080;也是不行
查了一些資料還是不太清楚,上來問問看各位先進
感謝
當您要proxy SSL/TLS連線時, 如 proxy_pass https://backend;
您需要有SSL/TLS證書和proxy相關設定. client, proxy, 和upstream之間有多重的https握手.
官網說明:
https://docs.nginx.com/nginx/admin-guide/security-controls/securing-http-traffic-upstream/
參考設定與說明:
https://gist.github.com/WhisperingChaos/033699f3b8d0df89ac50ab185b8628b4