如何解決Nginx 504 Gateway Time-out
2016-07-20 03:00:13
14373
把max_children由之前的10改為現(xiàn)在的30,這樣就可以保證 有充足的php-cgi進(jìn)程可以被使用;
把request_terminate_timeout由之前的0s改為60s,這樣php-cgi進(jìn)程 處理腳本的超時(shí)時(shí)間就是60秒,可以防止進(jìn)程都被掛起,提高利用效率。
接著再更改nginx的幾個(gè)配置項(xiàng),減少FastCGI的請(qǐng)求次 數(shù),盡量維持buffers不變:
fastcgi_buffers由 4 64k 改為 2 256k;
fastcgi_buffer_size 由 64k 改為 128K;
fastcgi_busy_buffers_size 由 128K 改為 256K;
fastcgi_temp_file_write_size 由 128K 改為 256K。
好了,重新加載php-fpm和nginx的配置,
另外,php-fpm的默認(rèn)靜態(tài)處理方式會(huì)使得php-cgi的進(jìn)程長(zhǎng)期占用內(nèi)存而無(wú)法釋放,這也是導(dǎo)致nginx出錯(cuò)的原因之一,因此可以將php-fpm的處理方式改成apache模式。
<value name=”style”>apache-like</value>
會(huì)員登錄
賬號(hào)登錄還沒(méi)有賬號(hào)?立即注冊(cè)