Nginx

讓 NGINX 針對自定義域驗證上游 SSL 證書?

  • December 8, 2019

我有一個自定義託管域,在公司的 Intranet 內部時它解析為內部網關機器,而在 Intranet 外部時它解析為 Cloudflare。有一個網站我們要同時提供內網和外網的訪問,所以我在網關上配置了 Nginx 如下:

server {
   listen 443 ssl http2;
   server_name example.com;

   location / {
       proxy_pass https://example.com.cloudflare.net;
       proxy_set_header Host "example.com";
   }
}

問題是,現在我希望 Nginx 驗證 SSL 證書(example.com.cloudflare.netexample.com不是解析的域)。我該怎麼做?

請注意,它example.com解析為該網關機器的 Intranet IP 地址(它也在 Intranet 中)。

看起來proxy_ssl_name就是你要找的東西。從文件中

Syntax:   proxy_ssl_name name; 
Default:  proxy_ssl_name $proxy_host;
...
Allows overriding the server name used to verify the certificate 
proxied HTTPS server and to be passed through SNI when establishing
a connection with the proxied HTTPS server.

引用自:https://serverfault.com/questions/994785