Почему при использовании proxy_pass не добавляется заголовок в ответ с помощью add_header NGINX?
Сделал маршрут в конфигурации nginx ниже.
location /test-route/ {
add_header Custom-Host $host;
add_header 'Host' '$host:8080';
# Вариант 1
# proxy_set_header Host $host:8080;
# proxy_pass http://servers;
# Вариант 2
# return 200 'success';
}
Можете подсказать, почему при выполнении курла на nginx сервер с первым вариантом в ответе на запрос нет заголовка Custom-Host? А во втором варианте есть.
add_header
ведь добавляет заголовок уже в ответ? Почему при использовании proxy_pass
его нет?
Сам запрос тоже не содержит каких-то особенных заголовков.
curl -v --location 'server-one.ru/test-route/main' --header 'Content-Type: application/json' --data '{"amount":1}'
Ответ.
* Host server-one.ru:8080 was resolved.
* IPv6: (none)
* IPv4:
* Connected to server-one.ru port 8080
> POST /test-route/main HTTP/1.1
> Host: server-one.ru:8080
> User-Agent: curl/8.6.0
> Accept: */*
> Content-Type: application/json
> Content-Length: 57
>
< HTTP/1.1 200
< Server: nginx/1.18.0 (Ubuntu)
< Date: Sun, 01 Sep 2024 06:36:36 GMT
< Content-Type: application/json;charset=UTF-8
< Transfer-Encoding: chunked
< Connection: keep-alive
< Vary: Origin
< Vary: Access-Control-Request-Method
< Vary: Access-Control-Request-Headers
< X-Content-Type-Options: nosniff
< X-XSS-Protection: 0
< Cache-Control: no-cache, no-store, max-age=0, must-revalidate
< Pragma: no-cache
< Expires: 0
< X-Frame-Options: DENY
< Content-Security-Policy: script-src 'self'
< Access-Control-Allow-Headers: *
<
* Leftovers after chunking: 5 bytes
* Connection #0 to host server-one.ru left intact
{"respose": "body"}