Apache ログを確認すると、mod_fcgid モジュールが異常であり、「ピアによる接続リセット:mod_fcgid:FastCGI サーバーからのデータ読み取りエラー」、「スクリプト ヘッダーの早期終了:index.php」、「プロセス /usr/.. . apache/ cgi-bin exit(communication error, get requested signal 7"、率直に言うと、PHP は実行を早期に終了し、ヘッダーを返さずに終了します。
これらのエラーに基づいて長い間オンラインで検索しましたが、見つかりませんでした満足のいく答えであり、mod_fcgid モジュールの設定に問題があるのではないかと誤解を招くものでした
解決策を見つけるまで、私は最近 php が少し遅くなっているものの、少なくとも実行できると考えていました。設定に問題はなく、phpinfo() が実行されると、プログラムは引き続き実行できます。エラー パターンを再度整理したところ、インクルードが多すぎる mvc フレームワークでは 500 個の内部エラーが発生することがわかりました。これは、php がファイルをインクルードできなくなったことを意味します。なぜですか?
df -h
システムのホームディレクトリ / が爆発しました
それで、大きなファイルを検索してください
Filesystem Size Used Avail Use% Mounted on /dev/sda1 6.8G 6.5G 17M 100% / ...
PHP プラグイン Xdebug が大量のパフォーマンス分析ファイルを生成し、それらがすべて記録されていることがわかりました。
find / -type f -size +300M
そこで、php.iniを変更して分析ファイルを別の場所に保存するか、まったく保存しません
/tmp/profiler/cachegrind.out.1336 /tmp/profiler/cachegrind.out.1329 ....
xdebugパフォーマンス分析ディレクトリとphp var trackingディレクトリを削除します
# close xdebug profiler in php.ini xdebug.profiler_enable = off
ハードディスクのステータスを再度確認すると、使用率は 26% で、残りは 4.9G であることがわかります
rm -rf /tmp/profilter rm -rf /tmp/trace
httpd サーバーを再起動したり、Web を更新したりする必要さえなく、再び正常に実行されます。
今後の問題を避けるために、スケジュールされたクリーニング ソフトウェア tmpwatch をインストールし、/etc/cron.daily/tmpwatch 設定でタイミング時間を 7d に設定する必要があります
Filesystem Size Used Avail Use% Mounted on /dev/sda1 6.8G 1.7G 4.9M 26% / ...
(日数は必ず)
usr/sbin/tmpwatch "$flags" 30d /var/tmp
週に一度、定期的にクリーンアップしてください
Apache 500 エラーによって引き起こされる一時ファイルの問題の分析と解決に関するその他の関連記事については、PHP 中国語 Web サイトをフォローしてください。