2016-07-01 12 views
0

Der Großteil meiner Seite funktioniert, aber wenn ich versuche, einen Teil meiner Website zugreifen, bekomme ich einen 502 Bad Gateway Fehler.502 Bad Gateway Fehler für Laravel Website läuft auf Nginx

Ich verwende die neueste Version von Laravel, nginx und php5-fpm. Mein Server ist eine AWS Ubuntu 14.04-Instanz.

Ich überprüfe das nginx-Protokoll und die folgenden Fehler

2016/07/01 19:06:29 [error] 1101#0: *8 recv() failed (104: Connection reset  by peer) while reading response header from upstream, client: [client IP here], server: [aws server IP here], request: "GET /get/request/here/build?active=talent HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "[server IP here]", referrer: "http://[server IP here]/admin?all=yes" 

Hier ist meine fpm/pool.d/www.conf Datei (alles, was nicht codiert aus mehr oder weniger)

; Pool name 
[www] 

listen.owner = www-data 
listen.group = www-data 
;listen.mode = 0660 

pm = dynamic 
pm.max_children = 5 
pm.start_servers = 2 
pm.min_spare_servers = 1 
pm.max_spare_servers = 3 
;pm.process_idle_timeout = 10s; 
; pm.max_requests = 500 

chdir =/
catch_workers_output = yes 

Hier ist meine nginx/sites-available/default file:

server { 
    listen 80 default_server; 
    listen [::]:80 default_server ipv6only=on; 

    root /var/www/laravelproject/public; 
    index index.php index.html index.htm; 

    server_name [server-ip-here]; 

    location/{ 
     try_files $uri $uri/ /index.php?$query_string; 
    } 

    location ~ \.php$ { 
     try_files $uri /index.php =404; 
     fastcgi_split_path_info ^(.+\.php)(/.+)$; 
     fastcgi_pass unix:/var/run/php5-fpm.sock; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     include fastcgi_params; 
    } 
} 

Wie kann ich dieses Problem beheben? Stellen Sie sicher,

+0

Was passiert, wenn Sie Service nginx Neustart laufen? Sehen Sie sich auch an /var/log/nginx/error.log – dmitryro

+0

Es startet sauber neu, und der Fehler an der Spitze ist von der Nginx-Fehlerprotokoll –

Antwort

2

wo Ihre fastcgi_params Sitze

location ~ \.php$ { 
    set $php_root /var/www/laravelproject/public; 
    fastcgi_pass unix:/var/run/php5-fpm.sock; // switch back when verified 
    fastcgi_index index.php; 
    fastcgi_param SCRIPT_FILENAME $php_root$fastcgi_script_name; 
    include /etc/nginx/fastcgi_params; // adjust to your absolute path 
} 
+0

Also als ich an den Port vertauscht hat es überhaupt nicht funktioniert, bekam die schlechte Gateway von einer Seite, die zuvor gearbeitet hat. –

+1

Sieht so aus als müsste Ihr fastcgi_params - in den vorhandenen Speicherort gesetzt werden, jetzt können Sie das Protokoll überprüfen und sehen. – dmitryro

+1

Versuchen Sie auch, die Zeile zu kommentieren listen [::]: 80 default_server ipv6only = on; zu und sicherstellen, dass nur ein Server Port 80 verwendet - Sie können von ps -ef oder ps aux sehen, was mit Prozessen los ist – dmitryro

1

Ich sehe Problem nicht in nginx Config.

Aber über www.conf Ich sehe, dass Sie Listener aber nicht definierten Listener-Socket definiert haben.

diese So versuchen:

[www] 

user = www-data 
group = www-data 

listen = /var/run/php5-fpm.sock 
listen.owner = www-data 
listen.group = www-data 
listen.mode = 0666 

pm = ondemand 
pm.max_children = 4 
pm.process_idle_timeout = 10s 
pm.max_requests = 32 
chdir =/

php_admin_flag[display_errors] = on 
php_admin_flag[log_errors] = off 
php_admin_value[memory_limit] = 512M 
php_admin_value[post_max_size] = 128M 
php_admin_value[upload_max_filesize] = 128M 
Verwandte Themen