原文地址:https://www.nginx.com/resources/admin-guide/reverse-proxy/
原文標題:Passing Request Headers
預設情況,NGINX在代理請求時會重新定義兩個HTTP頭欄位,“Host”和“Connection”,並刪除值為空白的頭部欄位。“Host”會被設定為 $proxy_host變數的值,“Connection”被設定為close。
By default, NGINX redefines two header fields in proxied requests, “Host” and “Connection”, and eliminates the header fields whose values are empty strings. “Host” is set to the $proxy_host variable, and “Connection” is set to close.
要改變這些設定,包括修改其他頭欄位,使用proxy_set_header指令。這個指令可以在location或者更高層使用。也可以在特定的server上下文或者在http塊中,例如:
To change these setting, as well as modify other header fields, use the proxy_set_header directive. This directive can be specified in a location or higher. It can also be specified in a particular server context or in the http block. For example:
location /some/path/ { proxy_set_header Host $host; proxy_set_header X-Real-IP$remote_addr; proxy_pass http://localhost:8000;}
在這個配置中,“Host”欄位被設定為$host變數。
In this configuration the “Host” field is set to the $host variable.
要阻止一個頭欄位被傳遞給被代理的伺服器,只要把它設定為空白字串。
To prevent a header field from being passed to the proxied server, set it to an empty string as follows:
location /some/path/ { proxy_set_header Accept-Encoding""; proxy_pass http://localhost:8000;}
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('
').text(i)); }; $numbering.fadeIn(1700); }); });
以上就介紹了NGINX學習筆記——傳遞要求標頭,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。