Connection reset by peer and other problems

hawkins nginx-forum at nginx.us
Tue Jul 2 09:56:50 UTC 2013


Hi guys,

I'm getting a lot of errors on logs right now and we've already tried
everything to solve the problem without success.
Everything was running just fine until last week.

We use nginx and php-fpm.
nginx version: nginx/1.2.0

The errors that we getting are from random pages and random domains this is
not specific.

Here is some errors from the logs:

[error] 26002#0: *8882 readv() failed (104: Connection reset by peer) while
reading upstream, client: XX.XXX.XX.XXX, server: www.DOMAINX.*, request:
"GET / HTTP/1.1", upstream:
"fastcgi://unix:/var/run/php5-fpm/site_live.sock:", host: "DOMAINX.de",
referrer:
"http://www.google.de/url?sa=t&rct=j&q=DOMAINX&source=web&cd=1&sqi=2&ved=0CDsQFjAA&url=https%3A%2F%2FDOMAINX.de%2F&ei=EaDSUd7UK6K84ASlu4DABA&usg=AFQjCNEd-czvmCp5Jji3kkpWZ1MtMdhpMA&bvm=bv.48572450,d.bGE"

[error] 26002#0: *8879 recv() failed (104: Connection reset by peer) while
reading response header from upstream, client: XX.XX.X.XX, server:
www.DOMAINX.*, request: "GET /files/2013/06/Twitter1.png HTTP/1.1",
upstream: "fastcgi://unix:/var/run/php5-fpm/site_live.sock:", host:
"DOMAINX.nl"

[error] 26016#0: *6433 FastCGI sent in stderr: "Primary script unknown"
while reading response header from upstream, client: 80.153.156.134, server:
www.DOMAINX.*, request: "GET
/bezgotowkowo/conversion.php?campaignID=11759&productID=17653&conversionType=sale&descrMerchant=&descrAffiliate=&gtmcb=1675309277
HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm/site_live.sock:",
host: "DOMAINX.pl", referrer: "https://DOMAINX.at/order-skip"


And here is is our nginx configs:
----------------------------------------------

server {
  listen      95;
  server_name www.DOMAINX.th DOMAINX.th www.DOMAINX.se DOMAINX.se
www.DOMAINX.be DOMAINX.be;
  rewrite ^ $scheme://DOMAINX.de$request_uri?; 
} 

server {
  listen      95;
  server_name www.DOMAINX.com;
  rewrite ^ $scheme://DOMAINX.com$request_uri?;
}

server {
  listen      95;
  server_name DOMAINX.com;

  access_log  /site/logs/live/nginx/landing.access.log main;
  error_log   /site/logs/live/nginx/landing.error.log;
  root        /site/www/htdocs/landing.live/public/;
  index       index.html index.php;
  
  port_in_redirect off;

  if ($http_x_forwarded_protocol !~* 'https') {
    return 301 https://$host$request_uri;
  }

  error_page 404 /redirect;
  rewrite ^/redirect $scheme://$host;

  location ~ \.php$ {
    fastcgi_pass    unix:/var/run/php5-fpm/site_live.sock;
    fastcgi_index   index.php;
    include         fastcgi_params;

    fastcgi_param   PHP_VALUE       "max_input_time=1200\n
memory_limit=512M\n post_max_size=128M\n upload_max_filesize=128M\n
newrelic.enabled=1\n newrelic.appname=DOMAINX.com\n
newrelic.framework=zend\n error_log=/site/logs/live/nginx/site.error.log";
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param   APPLICATION_ENV live;
    fastcgi_param   HTTPS           $thttps;
  }
}

server {
  listen      95;
  server_name m.DOMAINX.*;

  access_log  /site/logs/live/nginx/mobile.access.log main;
  error_log   /site/logs/live/nginx/mobile.error.log;
  root        /site/www/htdocs/mobile.live/public/;
  index       index.html index.php;

  port_in_redirect off;

  location ~ \.php$ {
    fastcgi_pass    unix:/var/run/php5-fpm/site_live.sock;
    fastcgi_index   index.php;
    include         fastcgi_params;

    fastcgi_param   PHP_VALUE       "max_input_time=1200\n
memory_limit=512M\n post_max_size=128M\n upload_max_filesize=128M\n
newrelic.enabled=1\n newrelic.appname=mobile-live\n
newrelic.framework=zend\n error_log=/site/logs/live/nginx/site.error.log";
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param   APPLICATION_ENV live;
    fastcgi_param   HTTPS           $thttps;
  }
  
  error_page  401 /error/401.html;    
  error_page  403 /error/403.html;
  error_page  404 /error/404.html;
  error_page  500 502 503 504 /error/50x.html;
   
  location /error {
      root /var/www/default/;
  }
}


server {
  listen      95;
  server_name developer.DOMAINX.com;

  access_log  /data/site/logs/live/nginx/landing.developer.access.log main;
  error_log   /data/site/logs/live/nginx/landing.developer.error.log;

  root        /var/www/developer;
  index       index.html index.php;

  location ~ \.php$ {
    fastcgi_pass    unix:/var/run/php5-fpm/developer.sock;
    fastcgi_index   index.php;
    include         fastcgi_params;

    fastcgi_param   PHP_VALUE       "max_input_time=1200\n
memory_limit=512M\n post_max_size=128M\n upload_max_filesize=128M\n
newrelic.enabled=1\n newrelic.appname=developer\n
error_log=/data/site/logs/live/developer.error.log";
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param   APPLICATION_ENV live;
    fastcgi_param   HTTPS           $thttps;
  }
  
  error_page  401 /error/401.html;    
  error_page  403 /error/403.html;
  error_page  404 /error/404.html;
  error_page  500 502 503 504 /error/50x.html;
   
  location /error {
      root /var/www/default/;
  }

}



server {
  listen      95 default_server;
  server_name www.DOMAINX.* DOMAINX.* site.DOMAINX.*;

  access_log  /site/logs/live/nginx/site.access.log main;
  error_log   /site/logs/live/nginx/site.error.log;

  client_max_body_size  20m;
  client_header_timeout 1200;
  client_body_timeout   1200;
  send_timeout          1200;
  keepalive_timeout     1200;

  set $thttps $https;
  set $tscheme $scheme;
  if ($http_x_forwarded_protocol = https) {
    set $thttps on;
    set $tscheme "https";
  }
  if ($http_x_forwarded_protocol = HTTPS) {
    set $thttps on;
    set $tscheme "https";
  }

  root        /site/www/htdocs/site.live/site/public/;
  try_files   $uri $uri/ /index.php?$args;
  index       index.php;

  location ^~ /files/ {
    expires 864000;
    fastcgi_pass    unix:/var/run/php5-fpm/site_live.sock;
    fastcgi_index   index.php;
    include         fastcgi_params;

    fastcgi_connect_timeout 1200;
    fastcgi_send_timeout    1200;
    fastcgi_read_timeout    1200;

    fastcgi_param   PHP_VALUE       "max_input_time=1200\n
memory_limit=512M\n post_max_size=128M\n upload_max_filesize=128M\n
newrelic.enabled=1\n newrelic.appname=site-live\n newrelic.framework=zend\n
error_log=/site/logs/live/nginx/site.error.log";
    fastcgi_param   SCRIPT_FILENAME
/site/www/htdocs/site.live/site/public/index.php$args;
    fastcgi_param   APPLICATION_ENV live;
    fastcgi_param   HTTPS           $thttps;
    # allow clients to cache served resources
    fastcgi_param   PHP_ADMIN_VALUE "session.cache_limiter = public";
  }

  location ~ \.php$ {
    fastcgi_pass    unix:/var/run/php5-fpm/site_live.sock;
    fastcgi_index   index.php;
    include         fastcgi_params;

    fastcgi_connect_timeout 1200;
    fastcgi_send_timeout    1200;
    fastcgi_read_timeout    1200;

    fastcgi_param   PHP_VALUE       "max_input_time=1200\n
memory_limit=512M\n post_max_size=128M\n upload_max_filesize=128M\n
newrelic.enabled=1\n newrelic.appname=site-live\n newrelic.framework=zend\n
error_log=/site/logs/live/nginx/site.error.log";
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param   APPLICATION_ENV live;
    fastcgi_param   HTTPS           $thttps;
    # emulate 'session.cache_limiter = nocache' setting in "php.ini":
    fastcgi_param   PHP_ADMIN_VALUE "session.cache_limiter = nocache";
  }

  error_page  401 /error/401.html;    
  error_page  403 /error/403.html;
  error_page  404 /error/404.html;
  error_page  500 502 503 504 /error/50x.html;
   
  location /error {
      root /var/www/default/;
  }

  location /rev.txt {
    access_log  off;
    auth_basic  off;
  }


  set $redirect off;
  if ($host ~* "DOMAINX\.(.*)") {
    set $tld $1;
  }
  if ($host ~* "^www\.DOMAINX\.(.*)") {
    set $redirect on;
  }
  if ($host ~* "(zenpay|evopay)\.(.*)") {
    set $tld $2;
    rewrite ^ $scheme://DOMAINX.$tld$request_uri? permanent;
  }
  if ($request_uri ~* rev.txt) {
    set $redirect off;
  }

  if ($thttps != "on") {
    set $redirect on;
  }
  if ($redirect = on) {
    rewrite ^ https://DOMAINX.$tld$request_uri? permanent;
  }

  if (-f /var/deploy/live.maintenance.lock) {
    rewrite ^(.*)$ /maintenance.php break;
  }

}

Thanks for your help.

Posted at Nginx Forum: http://forum.nginx.org/read.php?2,240477,240477#msg-240477



More information about the nginx mailing list