0

かなり大きなデータベースを照会し、結果を CSV に保存する php スクリプトがあります。ファイルをダウンロードしようとすると、500 Internal Server エラーが発生し続けます。

私の推測では、CSV に入力する必要がある行が 2000 行以上あるため、タイムアウトしています。私のコードはテキストファイルにあります。

これを修正するにはどうすればよいですか? これは php.ini で行う必要がありますか、それとも SSH で mysql タイムアウトを変更する必要がありますか? 私はこれについてすべて間違っているので、サーバーに保存する必要がありますか?

これをどのように行うべきかについて少し指示が必要です。前もって感謝します。

http://andreawine.ladev.co/csv-export.txt

4

1 に答える 1

1

PHP エラー ログで 500 エラーの具体的な原因を確認できますが、それが実際にスクリプト タイムアウトである場合は、タイムアウト制限を設定する方法がいくつかあります。

set_time_limit(TIMEOUT)を使用していないと仮定すると、関数を使用して、この (およびこれのみ) スクリプトの実行を許可する時間を増やすことができますsafe mode。ここTIMEOUTで、 は最大秒数です - http://php.net/manual/en/ function.set-time-limit.php

サーバー上のすべてのスクリプトの実行を許可する時間を増やすには、最大秒数 ( http://www.php.net/manual/en/info.configuration)でmax_execution_time TIMEOUTをより高い値に設定します。 php#ini.max-実行時間php.iniTIMEOUT

は最大秒数を使用して.htaccessファイルに値を設定することにより、特定のサイトまたは特定のフォルダーの下でスクリプトを実行できる時間を増やすことができます。php_value max_execution_time TIMEOUTTIMEOUT

于 2012-10-29T18:43:33.733 に答える