0

何らかの理由で、共有サーバーで実行しているときに、PHPコードから次の致命的なエラーが発生することがあります。

致命的なエラー:8行目のC:\ HostingSpaces [username] [subdomain] \ wwwroot\index.phpで最大実行時間が30秒を超えました

そして、その行は次のとおりです。

session_regenerate_id();

この問題は、共有サーバーでホストされているコードとリソースが利用できないことが原因である可能性がありますか?または、この問題の他の原因はありますか?

共有サーバーなので、PHPの設定を変更することはできません。

編集:

8行目の前の唯一の行は、require_onceモデルオブジェクトの数行です。他の唯一の行はsession_start()です。

PHP設定を確認したところ、session.save_handlerはローカル値とマスター値の両方のファイルであると記載されています。ファイルを使用しているので、ディスクからの読み取りと書き込みに問題があるのでしょうか。

4

1 に答える 1

1

あなたの問題は、あなたが疑うようにパフォーマンスとリソースの問題である可能性があると思いますが、8 行目でしか停止していないのは奇妙だと思います。コードの残りの部分が非常に最小限であれば、その可能性は高いと思います。

別の行でタイムアウトが発生するようにコードを変更してみましたか? たとえば、追加sleep(25);してみて、代わりにその行で致命的なタイムアウトが発生するかどうかを確認できます。

また、最大実行時間制限を設定できないことは確かですか? 共有 php.ini を変更できない場合でも、max_execution_time次の他のオプションのいずれかを使用して設定できると思われます。

の値/引数max_execution_timeは秒単位であると思います.0(ゼロ)に設定すると、実行時間制限は使用されません。(ゼロを使用することが安全であると考えるかどうかは、あなた次第です。)

于 2012-04-17T15:29:09.453 に答える