Nginx
nginx 代理到 apache,無法啟用 keepalive (403)
我的設置是:
upstream http_backend { server 127.0.0.1:81; keepalive 16; } server { ... location / { proxy_pass http://http_backend; proxy_http_version 1.1; proxy_set_header Connection ""; } }
但我
403
在每一頁上都有一個。如果我評論
#proxy_set_header Connection "";
頁面已載入。但是根據nginx docs,它應該被清除:對於 HTTP,proxy_http_version 指令應設置為“1.1”,並且應清除“Connection”標頭欄位:
我必須在 Apache 端設置什麼,以便我可以在 nginx(代理和 ssl 解除安裝程序)和 apache(mpm_event 和 php-fpm)之間設置 keeplive?
KeepAlive
已設置為On
。
好的,錯誤是我在
server
外面的塊中設置了一些標題location
,所以這些被新proxy_set_header
指令清除了。我必須將它們包含在location
塊中,例如:server { ... location / { proxy_pass http://http_backend; proxy_http_version 1.1; proxy_set_header Connection ""; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }