PHP スクリプトの実行時間が通常より長くなると、nginx から 504 タイムアウト メッセージが表示されます。set_time_limit(0)
それを妨げないようです!nginx で php5-fpm を実行すると動作しませんか? もしそうなら、時間制限を設定する適切な方法は何ですか?
エラー:
504 Gateway Time-out
nginx/1.2.7
このリンクを試してみてください。これを修正する方法についてのより良い解決策があります。したがって、手順は次のとおりです。
nginx.conf
ディレクトリにあるファイルを開きます/etc/nginx
。http {
以下のコードをセクションの下に追加します。
client_header_timeout 3000;
client_body_timeout 3000;
fastcgi_read_timeout 3000;
client_max_body_size 32m;
fastcgi_buffers 8 128k;
fastcgi_buffer_size 128k;
注: すでに存在する場合は、それに応じて値を変更します。
Nginx と php5-fpm をリロードします。
$ service nginx reload
$ service php5-fpm reload
エラーが続く場合は、値を増やすことを検討してください。
PHP を使用して、nginx によって発行されるタイムアウトを防ぐことはできません。
より多くの時間を許可するように nginx を構成するには、proxy_read_timeout
ディレクティブを参照してください。
正解は、Nginx 構成でfastcgi_read_timeoutを増やすことです。
そのような単純な!
php-fpm を使用しているため、時間がかかることがわかっているリクエストの処理には fastcgi_finish_request() を利用する必要があります。