gzip on;
gzip_static on;
gzip_buffers 16 8k;
gzip_comp_level 8;
gzip_min_length 1k;
gzip_types text/plain text/xml text/css application/x-javascript application/xml application/xml+rss application/javascript application/json; //关键
nginx配置中$http_host、$host、$host:$proxy_port
1、 proxy_set_header Host $http_host;
不改变请求头 。
2、proxy_set_header Host h o s t ; 如 果 客 户 端 请 求 头 中 没 有 携 带 这 个 头 部 , 那 么 传 递 到 后 端 服 务 器 的 请 求 也 不 含 这 个 头 部 。 这 种 情 况 下 ,
使 用 host; 如果客户端请求头中没有携带这个头部,那么传递到后端服务器的请求也不含这个头部。 这种情况下,使用host;如果客户端请求头中没有携带这个头部,
那么传递到后端服务器的请求也不含这个头部。这种情况下,使用host变量它 的值在请求包含“Host”请求头时为“Host”字段的值,在请求未携带“Host”请求头时为虚拟主机的主域名;
3、proxy_set_header Host h o s t : host:host:proxy_port;
服务器名可以和后端服务器的端口一起传送:
4、如果某个请求头的值为空,那么这个请求头将不会传送给后端服务器:
proxy_set_header Accept-Encoding “”;
5、用户真实的ip地址转发给后端服务器
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
另一种写法 直接用域名取代$host 解决:Uncaught TypeError: Cannot read properties of undefined (reading 'code')
location /api/v1 {
proxy_pass https://api.xxxxx.com;
proxy_connect_timeout 600s;
proxy_send_timeout 600s;
proxy_read_timeout 600s;
proxy_set_header Host api.xxxxxx.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_next_upstream error timeout invalid_header http_502 http_503 http_504;
}