我有一个问题,即nginx在代理传递后删除了content-length头。应用程序后端发送gzip流但指定内容长度。
NGINX将类型内容类型更改为chunked并删除内容长度标头。
这不适用于应用程序,因为它不是由浏览器读取,而是由需要指定内容长度的专有应用程序读取。
指定chunked_transfer_encoding off;
后,它会停止添加内容类型标题,但仍会删除内容长度。如何禁用nginx中的任何头文件修改?
困惑:
upstream backend {
server 127.0.0.1:9090;
}
server {
root /usr/share/nginx/www;
index index.html index.htm;
chunked_transfer_encoding off;
location / {
proxy_pass http://backend;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
proxy_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
答案 0 :(得分:2)
这是过去nginx中的已知错误。更新到最新版本。