%20-%20MAMP%20%E3%82%BB%E3%83%83%E3%83%88%E3%82%A2%E3%83%83%E3%83%97%E3%81%A7%E3%82%BF%E3%82%A4%E3%83%A0%E3%82%A2%E3%82%A6%E3%83%88%E3%82%92%E5%BB%B6%E9%95%B7%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
デフォルトの 60 秒を超えて実行される PHP スクリプトがありますが、ページは 504 ゲートウェイ タイムアウト エラーを返します。
PHP スクリプトの最後にページが結果を返すようにタイムアウトを延長するにはどうすればよいですか。
私は実行しています:
- マンプ5
- エンギンクス
- PHP 7.1.3 (ロード済み)
他のサイトや回答も見ましたが、MAMP を実行しているため、これらの変更を追加する必要がある場所は必ずしも同じではありません。
いくつかの場所で、私の問題に類似した、しかし正確な答えは見つかりませんでした。
現時点で行った変更:
MAMP/conf/nginx/nginx.confにfastcgi_read_timeout 300を追加しました
location ~* /MAMP[^-]*(.*)$ {
root /Applications/MAMP/bin;
index index.php;
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/Applications/MAMP/Library/logs/fastcgi/nginxFastCGI.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_read_timeout 300;
include fastcgi_params;
}
}
MAMP/conf/php7.1.3/php.ini で max_execution_time = 300 を更新しました
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 300 ; Maximum execution time of each
script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
memory_limit = 128M ; Maximum amount of memory a script may consume (8MB)
私が使用している MAMP 実装では、これらのパラメータを入力すべき場所がここなのか、それとも他の場所なのか、ちょっと混乱しています。変更により、504 応答が返された後も PHP スクリプトの実行を継続できるようになりますが、504 応答を完全に排除したいことに注意してください。