Lesen ich Fehler wie diese:Nginx Upstream gesendet zu groß Kopf während Antwort-Header von Upstream
[error] 27544#0: *47335682 upstream sent too big header while reading response
header from upstream, client: 88.88.88.88, server: example..com,
request: "POST /tool/ HTTP/1.1", upstream: "http://88.88.88.88:7080/tool/",
host: "example.com"
In Bezug auf diese Frage ist es möglich, Puffergröße von nginx conf-Datei wie folgt zu erhöhen: upstream sent too big header while reading response header from upstream
http {
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
}
location
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
(für zukünftige Referenz, Standardgröße für fastcgi_buffer_size und fastcgi_buffers ist 4k oder 8k, in Bezug auf Plattform)
Thi s Text erscheint in dem Browser des Benutzers: Nginx 502 Bad Gateway
Ich plane, um vorübergehend Puffergröße zu erhöhen. Dann kann ich loggen, wenn die Puffer zu groß sind. Ist es möglich Header zu finden, die zu groß für Upstream sind? apache_response_headers() und headers_list() haben mir nicht alle Antwort-Header gegeben. Es gab mir nur Verfalls-, Cache-Control- und Pragma-Header.
hat die Änderung proxy_buffer_size macht ein Performance-Problem?
(nginx Version: nginx/1.6.0, PHP 5.4.42, xcache 3.2)
Check out http://stackoverflow.com/questions/ 13894386/upstream-too-big-nginx-codeigniter sollte sie ihre frage beantworten. –
Was genau meinen Sie mit Ihrer Frage? Wie soll man die Header mit nginx überprüfen? Es ist ein Web-Server, kein Editor oder ein Traffic-Sniffing-Tool. Wenn Sie die Header überprüfen möchten, würde ich tcpdump empfehlen. – cnst
Es ist auch möglich, die Puffergröße vorübergehend zu erhöhen und große Header zu protokollieren. Aber php headers_list gibt diese Daten nicht. – trante