Portál AbcLinuxu, 14. května 2025 02:12

Dotaz: Nginx - reverse proxy

2.6.2016 10:18 vencis
Nginx - reverse proxy
Přečteno: 518×
Odpovědět | Admin
Ahoj, nainstaloval jsem Nginx 1.10 jako reverse proxy server a na backendu mam 3 aplikacni servery s Apache 2.4 s PHP 5.4 Zda se, ze vse funguje tak jak ma, jen v error logu se stale objevuje hlaska:
[warn] 19180#19180: *4104707 upstream sent more data than specified in "Content-Length" header while reading upstream, client: xxx.xxx.xxx.xxx, server: domain.tld, request: "GET /path/to/image.png HTTP/1.1", upstream: "http://10.10.10.161:80/path/to/image.png", host: "domain.tld", referrer: "https://domain.tld"
V Apache logu nic podezreleho neni.

Konfigurace domeny domain.tld v Nginxu:
server {
   listen 443 ssl;
   server_name domain.tld;

   ssl on;
   ssl_certificate         /etc/letsencrypt/live/domain.tld/fullchain.pem;
   ssl_certificate_key     /etc/letsencrypt/live/domain.tld/privkey.pem;
   ssl_dhparam /etc/ssl/certs/dhparam.pem;

   ssl_session_cache shared:SSL:50m;
   ssl_session_timeout 1d;
   ssl_session_tickets off;

   # intermediate configuration. tweak to your needs.
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SH
A384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA
:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:
DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA2
56:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
   ssl_prefer_server_ciphers on;


   # HSTS (ngx_http_headers_module is required) (15768000 seconds = 6 months)
   add_header Strict-Transport-Security max-age=15768000;

   location / {
       proxy_pass http://backend;
       proxy_http_version 1.1;
       proxy_set_header Connection "";
       proxy_redirect http:// $scheme://;
       proxy_set_header Host $host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header X-Forwarded-Proto $scheme;
   }
}
Konfigurace backendu:
upstream backend {
   ip_hash;
   server appserver1;
   server appserver2;
   server appserver3;
}
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

MMMMMMMMM avatar 2.6.2016 12:24 MMMMMMMMM | skóre: 44 | blog: unstable | Valašsko :-)
Rozbalit Rozbalit vše Re: Nginx - reverse proxy
Odpovědět | | Sbalit | Link | Blokovat | Admin
možná pomůže http://www.programering.com/a/MzM5gzMwATE.html (vypnutí proxy_buffering)
Linux Dokumentační Projekt - PDF ke stažení
2.6.2016 14:07 vencis
Rozbalit Rozbalit vše Re: Nginx - reverse proxy
Vypnout proxy_buffering jsem jiz zkousel, ale dopadlo to tak, ze se nenacitali vsechny prvky na strance (upstream prematurely closed connection while reading response header from upstream) viz bod 3. z tveho odkazu

Ani best-practices nedoporucuji vypinat proxy_buffering

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.