Nginx 502坏的网关:它只是不会停止

我遇到了大多数人对Nginx的疑问:502错误的网关错误。 它们是间歇性的,但每次会话通常会发生一次以上,这意味着我的用户几乎每次使用应用程序时都会遇到这种情况。 我已经尝试调整fastcgi_buffersfastcgi_buffer_size (在两个方向)无济于事。 我用configuration文件尝试了其他各种东西,但似乎没有任何工作。 这里是我的configuration(注意,我已经剥去了我尝试过的大部分东西,因为它们不起作用,我不想用一堆不相关的指令使文件膨胀):

 server { root /usr/share/nginx/www/; index index.php; # Make site accessible from http://localhost/ server_name localhost; # Pass PHP scripts to PHP-FPM location ~ \.php { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; } # Lock the site location / { auth_basic "Administrator Login"; auth_basic_user_file /usr/share/nginx/.htpasswd; } # Hide the password file location ~ /\. { deny all; } client_max_body_size 8M; } 

我正在运行一个小的Rackspace云服务器,这应该足以处理一个小用户群的应用程序…

是的,已知的Nginx:502错误的网关错误…;)我稍后处理了这个问题。 我的工作是增加fastcgi_buffersfastcgi_buffer_size参数的值。 我在Nginx的/etc/nginx/sites-available/default中添加了2个参数:

 location ~ \.php$ { root /your/site/root; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; # set these two: fastcgi_buffer_size 16k; fastcgi_buffers 4 16k; } 

希望这有助于一些。