summaryrefslogtreecommitdiffhomepage
path: root/src/http
diff options
context:
space:
mode:
authorRoman Arutyunyan <arut@nginx.com>2026-04-08 16:51:07 +0400
committerRoman Arutyunyan <arutyunyan.roman@gmail.com>2026-04-14 09:53:13 +0400
commit00979ba9d843be266529067285b635070f2d1993 (patch)
tree13b688f2bfda256c73ced399991fddfa0930efe8 /src/http
parentb761b0485b5bdc49ce9124126530fe575eb80627 (diff)
downloadnginx-00979ba9d843be266529067285b635070f2d1993.tar.gz
nginx-00979ba9d843be266529067285b635070f2d1993.tar.bz2
Remove Proxy-Connection HTTP upstream header
As per RFC 9110, this header SHOULD be removed by a proxy. Also, as per RFC 9113, this header MUST be removed when proxying to an HTTP/2 backend.
Diffstat (limited to 'src/http')
-rw-r--r--src/http/modules/ngx_http_grpc_module.c1
-rw-r--r--src/http/modules/ngx_http_proxy_module.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/src/http/modules/ngx_http_grpc_module.c b/src/http/modules/ngx_http_grpc_module.c
index cc3aebe59..4a47b74c5 100644
--- a/src/http/modules/ngx_http_grpc_module.c
+++ b/src/http/modules/ngx_http_grpc_module.c
@@ -514,6 +514,7 @@ static ngx_keyval_t ngx_http_grpc_headers[] = {
{ ngx_string("TE"), ngx_string("$grpc_internal_trailers") },
{ ngx_string("Host"), ngx_string("") },
{ ngx_string("Connection"), ngx_string("") },
+ { ngx_string("Proxy-Connection"), ngx_string("") },
{ ngx_string("Transfer-Encoding"), ngx_string("") },
{ ngx_string("Keep-Alive"), ngx_string("") },
{ ngx_string("Expect"), ngx_string("") },
diff --git a/src/http/modules/ngx_http_proxy_module.c b/src/http/modules/ngx_http_proxy_module.c
index 0b388b30f..e33dc37fd 100644
--- a/src/http/modules/ngx_http_proxy_module.c
+++ b/src/http/modules/ngx_http_proxy_module.c
@@ -747,6 +747,7 @@ static char ngx_http_proxy_version_11[] = " HTTP/1.1" CRLF;
static ngx_keyval_t ngx_http_proxy_headers[] = {
{ ngx_string("Host"), ngx_string("$proxy_internal_host") },
{ ngx_string("Connection"), ngx_string("") },
+ { ngx_string("Proxy-Connection"), ngx_string("") },
{ ngx_string("Content-Length"), ngx_string("$proxy_internal_body_length") },
{ ngx_string("Transfer-Encoding"), ngx_string("$proxy_internal_chunked") },
{ ngx_string("TE"), ngx_string("") },
@@ -775,6 +776,7 @@ static ngx_str_t ngx_http_proxy_hide_headers[] = {
static ngx_keyval_t ngx_http_proxy_cache_headers[] = {
{ ngx_string("Host"), ngx_string("$proxy_internal_host") },
{ ngx_string("Connection"), ngx_string("") },
+ { ngx_string("Proxy-Connection"), ngx_string("") },
{ ngx_string("Content-Length"), ngx_string("$proxy_internal_body_length") },
{ ngx_string("Transfer-Encoding"), ngx_string("$proxy_internal_chunked") },
{ ngx_string("TE"), ngx_string("") },