proxy_ssl_server_name on ;
Nginx 反向代理高级篇 : Nginx 反向代理高级篇 - 简书 (jianshu.com)
proxy_ssl_server_name on; # 当开启时,在SSL握手的时候会把HostName传给上游服务器,以便上游服务器知道用哪个证书
1.多个域名访问不同系统,使用同一个公网IP的情况;
可以多个域名配置同一个公网IP和端口,映射到不同服务的nginx代理上,通过nginx配置server_name识别源域名,判定访问来源,进行请求处理。
2.反向代理https请求,nginx编译安装时需要增加配置模块--with-http_ssl_module
3.使用阿里云的SLB作为负载均衡,证书可以配置在SLB上,但是要选择七层负载均衡。
4.为啥添加host的时候只能写域名,不能通过变量获取。
proxy_set_header可以设置Host为、host与$http_host。
host的值设置为$proxy_host,是指nginx.conf的proxy_pass中设置的host值,也就是192.168.1.3,也就是服务器的IP地址。
不是一个固定的变量,他其实是http_HEADER通配后的结果。
http_content_type表示请求头里content-type属性的值,同理,$http_host指的就是请求头里的host属性。
$host是core模块内部的一个变量。
当请求头里不存在Host属性或者是个空值,$host则等于server_name
如果请求头里有Host属性,那么host就是www.example.com