Я настроил NGINX в качестве балансировщика нагрузки для двух серверов Domino следующим образом:
http {
upstream www.mydomain.com {
server 1.1.1.1;
server 2.2.2.2 backup;
}
server {
listen 80;
server_name www.mydomain.com;
location / {
proxy_pass http://www.mydomain.com;
}
}
}
Если я обращаюсь к серверу Domino напрямую, заголовки ответа будут следующими:
HTTP/1.1 200 OK
Server: Lotus-Domino
Date: Mon, 23 Dec 2013 12:19:36 GMT
Last-Modified: Fri, 20 Dec 2013 08:16:27 GMT
Content-Type: text/html; charset=US-ASCII
Content-Length: 12713
Cache-control: private
ETag: W/"MTAtODEwRC1DMjI1N0MzRDAwN0M3NTBCLUMyMjU3QzQ3MDAyRDczMzktMC1DTj1QYW51IEhhYXJhbW8vTz1BQUQ="
Когда я захожу на ту же страницу через NGINX, заголовки ответа следующие:
HTTP/1.1 200 OK
Server: nginx/1.0.15
Date: Mon, 23 Dec 2013 12:02:29 GMT
Content-Type: text/html; charset=US-ASCII
Connection: keep-alive
Last-Modified: Mon, 23 Dec 2013 12:20:47 GMT
Expires: Tue, 01 Jan 1980 06:00:00 GMT
Content-Length: 12713
Могу ли я настроить NGINX для передачи заголовков ответа точно так же, как я получаю их напрямую от Domino? Я знаю, что могу настроить некоторые из них по одному, например так:
proxy_pass_header Server;
Но, например, ETag
даже таким образом не пройдут.
решение1
Скорее всего, nginx изменяет ответ от upstream из-за включенного gzip, например. Вы можете найти больше информацииздесь.