1.請檢查你的FastCGI進程是否啓動
2.FastCGI進程不夠使用
請經過執行 netstat -anpo | grep "php-cgi" | wc -l 判斷,是否接近你啓動的FastCGI進程,接近你的設置,表示進程不夠
來源:http://blog.s135.com/post/361.htm
3.執行超時
請把
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
這幾項的值調高
來源:http://blog.s135.com/post/361.htm
4.FastCGI緩衝不夠
nginx和apache同樣,有前端緩衝限制
請把
fastcgi_buffer_size 32k;
fastcgi_buffers 8 32k;
這幾項的值調高
來源:http://www.hiadmin.com/nginx-502-gateway-error一例/
5.Proxy緩衝不夠
若是你使用了Proxying,請把
proxy_buffer_size 16k;
proxy_buffers 4 16k;
這幾項的值調高
來源:http://www.ruby-forum.com/topic/169040
6.https轉發配置錯誤
正確的配置方法
server_name www.mydomain.com;
location /myproj/repos {
set $fixed_destination $http_destination;
if ( $http_destination ~* ^https(.*)$ )
{
set $fixed_destination http$1;
}
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Destination $fixed_destination;
proxy_pass http://subversion_hosts;
}
來源:http://www.ruby-forum.com/topic/173455
7.php腳本執行時間過長
將php-fpm.conf的<value name="request_terminate_timeout">0s</value>的0s改爲一個時間 php
8.Nginx 413錯誤的排查:修改上傳文件大小限制
在上傳時nginx返回了413錯誤,查看log文件,顯示的錯誤信息是:」413 Request Entity Too Large」, 因而在網上找了下「nginx413錯誤」發現須要作如下設置:
在nginx.conf增長 client_max_body_size的相關設置, 這個值默認是1m,能夠增長到8m以增長提升文件大小限制;
若是運行的是php,那麼還要檢查php.ini,這個大小client_max_body_size要和php.ini中的以下值的最大值一致或者稍大,這樣就不會由於提交數據大小不一致出現的錯誤。
post_max_size = 8M
upload_max_filesize = 2M
9.Nginx 400錯誤排查:HTTP頭/Cookie過大
今天有人彙報nginx的HTTP400錯誤,並且這個HTTP400錯誤並非每次都會出現的,查了一下發現nginx400錯誤是因爲request header過大,一般是因爲cookie中寫入了較長的字符串所引發的。
解決方法是不要在cookie裏記錄過多數據,若是實在須要的話能夠考慮調整在nginx.conf中的client_header_buffer_size(默認1k)
若cookie太大,可能還須要調整large_client_header_buffers(默認4k),該參數說明以下:
請求行若是超過buffer,就會報HTTP 414錯誤(URI Too Long)
nginx接受最長的HTTP頭部大小必須比其中一個buffer大,不然就會報400的HTTP錯誤(Bad Request)。 html
10.參數都有所調整.目的是解決代理過程當中出現的一些502 499錯誤 前端
user www www;
worker_processes 4;
# [ debug | info | notice | warn | error | crit ]
error_log /usr/local/webserver/nginx/logs/nginx_error.log crit;
pid /usr/local/webserver/nginx/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
}
http
{
include mime.types;
default_type application/octet-stream;
source_charset GB2312;
server_names_hash_bucket_size 256;
client_header_buffer_size 256k;
large_client_header_buffers 4 256k;
#size limits
client_max_body_size 50m;
client_body_buffer_size 256k;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
#參數都有所調整.目的是解決代理過程當中出現的一些502 499錯誤
sendfile on;
tcp_nopush on;
keepalive_timeout 120; #參數加大,以解決作代理時502錯誤
tcp_nodelay on;
include vhosts/upstream.conf;
include vhosts/bbs.linuxtone.conf;
} node
server
{
listen 80;
server_name bbs.linuxtone.conf;
charset GB2312;
index index.html index.htm;
root /date/wwwroot/linuxtone/;
location ~ ^/NginxStatus/ {
stub_status on;
access_log off;
}
location / {
root /date/wwwroot/linuxtone/;
proxy_redirect off ;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 50m;
client_body_buffer_size 256k;
proxy_connect_timeout 30;
proxy_send_timeout 30;
proxy_read_timeout 60;
proxy_buffer_size 256k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
proxy_temp_file_write_size 256k;
proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
proxy_max_temp_file_size 128m;
proxy_pass http://bbs.linuxtone.com;
} linux