無限ループについて
by
Mさん
(f0f9b4f7)
投稿数:0回
(ベストアンサー:0回)
(ベストアンサー:0回)
2019/08/11 10:57
phpで間違って無限ループしてしまった場合に備え、.htaccessに「php_value max_execution_time 120」と書いたのですが、サーバーエラー(Internal Server Error)が発生してしまいました。
php.iniでも、.htaccessでもいいので、無限ループ対策の方法を教えて下さい。
php.iniでも、.htaccessでもいいので、無限ループ対策の方法を教えて下さい。
by
.さん
(4b9b203e)
投稿数:257回
(ベストアンサー:32回)
(ベストアンサー:32回)
2019/08/11 16:25
.htaccessでは設定できないようにサーバー側で制限がかけられているっぽいです。
簡単なスクリプトで確認したところ、デフォルトでは30秒という制限がかけられているようです。
それではだめですか?
変更したいのなら、ご自身のスクリプトの最初で、
ini_set('max_execution_time', 10);
として上限を指定してみてください。(この場合だと上限10秒)
以下、max_execution_timeの確認用スクリプトです。
<html>
<head>
<body>
<?php
print("<p>max_execution_time = " . ini_get('max_execution_time') . "</p>\n");
ini_set('max_execution_time', 10);
print("<p>max_execution_time = " . ini_get('max_execution_time') . "</p>\n");
ini_set('max_execution_time', 60);
print("<p>max_execution_time = " . ini_get('max_execution_time') . "</p>\n");
?>
</body>
</html>
簡単なスクリプトで確認したところ、デフォルトでは30秒という制限がかけられているようです。
それではだめですか?
変更したいのなら、ご自身のスクリプトの最初で、
ini_set('max_execution_time', 10);
として上限を指定してみてください。(この場合だと上限10秒)
以下、max_execution_timeの確認用スクリプトです。
<html>
<head>
<body>
<?php
print("<p>max_execution_time = " . ini_get('max_execution_time') . "</p>\n");
ini_set('max_execution_time', 10);
print("<p>max_execution_time = " . ini_get('max_execution_time') . "</p>\n");
ini_set('max_execution_time', 60);
print("<p>max_execution_time = " . ini_get('max_execution_time') . "</p>\n");
?>
</body>
</html>