104: Conexión restablecida por un par mientras se lee el encabezado de respuesta desde el flujo ascendente (Nginx)

Pregunta:

Tengo un servidor que estaba funcionando bien hasta el 3 de octubre de 2013 a las 10:50 am cuando comenzó a devolver intermitentemente errores "502 Bad Gateway" al cliente.

Aproximadamente 4 de cada 5 solicitudes del navegador tienen éxito, pero aproximadamente 1 de cada 5 falla con un 502.

El registro de errores de nginx contiene muchos cientos de estos errores;

2013/10/05 06:28:17 [error] 3111#0: *54528 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 66.249.66.75, server: www.bec-components.co.uk  request: ""GET /?_n=Fridgefreezer/Hotpoint/8591P;_i=x8078 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www.bec-components.co.uk"

Sin embargo, el registro de errores de PHP no contiene ningún error coincidente.

¿Hay alguna manera de hacer que PHP me brinde más información sobre por qué está restableciendo la conexión?

Este es nginx.conf ;

user              www-data;
worker_processes  4;
error_log         /var/log/nginx/error.log;
pid               /var/run/nginx.pid;

events {
   worker_connections  1024;
}

http {
  include          /etc/nginx/mime.types;
  access_log       /var/log/nginx/access.log;

  sendfile               on;
  keepalive_timeout      30;
  tcp_nodelay            on;
  client_max_body_size   100m;

  gzip         on;
  gzip_types   text/plain application/xml text/javascript application/x-javascript text/css;
  gzip_disable "MSIE [1-6]\.(?!.*SV1)";

  include /gvol/sites/*/nginx.conf;

}

Y este es el .conf de este sitio;

server {

  server_name   www.bec-components.co.uk bec3.uk.to bec4.uk.to bec.home;
  root          /gvol/sites/bec/www/;
  index         index.php index.html;

  location ~ \.(js|css|png|jpg|jpeg|gif|ico)$ {
    expires        2592000;   # 30 days
    log_not_found  off;
  }

  ## Trigger client to download instead of display '.xml' files.
  location ~ \.xml$ {
    add_header Content-disposition "attachment; filename=$1";
  }

   location ~ \.php$ {
      fastcgi_read_timeout  3600;
      include               /etc/nginx/fastcgi_params;
      keepalive_timeout     0;
      fastcgi_param         SCRIPT_FILENAME  $document_root$fastcgi_script_name;
      fastcgi_pass          127.0.0.1:9000;
      fastcgi_index         index.php;
   }
}

## bec-components.co.uk ##
server {
   server_name   bec-components.co.uk;
   rewrite       ^/(.*) http://www.bec-components.co.uk$1 permanent;
}

Respuesta:

Siempre confiaría en si mis servidores web me dicen: 502 Bad Gateway

  • ¿Cuál es el tiempo de actividad de su proceso fastcgi / nginx?
  • ¿supervisas las conexiones de red?
  • ¿Puede confirmar / negar un cambio de recuento de visitantes alrededor de ese día?

Qué significa eso:

  • nginx no puede acceder a su fastcgi-process; ya sea para ralentizar o no corresponder en absoluto. puerta de enlace incorrecta significa: nginx no puede fastcgi_pass a ese recurso definido 127.0.0.1:9000; en ese momento tan específico .

  • sus registros de errores iniciales lo dicen todo:

.

recv() failed 
    -> nginx failed

(104: Connection reset by peer) while reading response header from upstream, 
    -> no complete answer, or no answer at all
upstream: "fastcgi://127.0.0.1:9000", 
    -> who is he, who failed???

desde mi punto de vista limitado, sugeriría:

  • reinicia tu fastcgi_process / server
  • revisa tu registro de acceso
  • habilitar debug-log

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım