php5-fpmが起動しなかった理由を知るにはどうすればよいですか?


10

サーバーに到達しようとすると504ゲートウェイタイムアウトが発生します。小さなチェックでphp5-fpmログにログが見つかりませんでしたが、念のため、再起動を試みました。それを再起動しようとしているとき:

sudo service php5-fpm restart

私は得る[fail] が、私がするとき

sudo service php5-fpm stop
sudo service php5-fpm start

エラーは出ません。

ログがない場合、どうすれば調査できますか?私に何ができる?

回答:


17

php-fpmのerror_logファイルを確認しましたか?そのファイルの場所はphp-fpm.confで宣言する必要があります(Ubuntuの構成は/etc/php5/fpm/php-fpm.conf、ログファイルは/ var / log / php5-fpm / logです)。また、log_levelが無効になっている場合(; log_level)、有効にしてdebugに変更してください。その後、php5-fpmサービスを再起動してログを確認してください。

フォアグラウンドモードでphp5-fpmを実行してみることもできます。

# php5-fpm -y /etc/php5/fpm/php-fpm.conf

多分これはあなたに何か面白いものを示しています。


1
私の場合、このコマンドはphp5-fpmを開始しましたが、開始service php5-fpm startしませんでした。ありがとう!
デビッドトーマス

デイビス、私には+1のようだ!しかし.. jamzedが私に解決策を与えてくれました、私はいくつかのエラー+1を見つけました!皆さん、ありがとうございました!
Tenaciousd93

upstartジョブを使用してFPMを起動すると、php-fpm起動ログは/ var / log / upstart /に書き込まれます
Ashwin Date

php7.0の場合php-fpm7.0 -F -c /etc/php/7.0/fpm/php-fpm.conf
Yadvendarは

4

標準的なトラブルシューティング手順:

  • ログファイルを確認してください。どこにあるかわからない場合は、設定を確認するか、pidがで確実に見つかるようにするにps aux | grep php-fpmは、そうしますlsof -p $PID | grep log(何も表示されない場合はgrepを省略します)。
  • 時間のログファイルの99%が原因を示します。そうでない場合は、設定でログレベルを探し、それを上げて再試行してください。
  • おそらくそれは即座に終了し、PIDを取得してプロセスを検査することはできません。プロセスをフォアグラウンドで開始することもできますが、これは、使用する必要のあるコマンドラインスイッチを特定することを意味します。通常は、既存の構成を指定するだけです。
  • ログファイルまたはstdout / stderr(フォアグラウンド出力)のいずれにも手掛かりが含まれていない場合は、straceの時間ですが、それは別の投稿です。

+1は、ログファイルを見つけるための素晴らしい方法です。
deweydb 2015年

3

このメモは私を助けました:https : //bugs.launchpad.net/nginx/+bug/1366651

私の場合、nginx> 1.6.1に更新すると、php5-fpmに渡されるパラメーターはfastcgi_paramsではなくfastcgi.confにあり、結果として常に200(ok)を返すPHPになりますが、コンテンツはありません。 SCRIPT_FILENAMEは設定されなくなりました。

それが他の誰かにも役立つことを願っています。


2

私にとって、問題は私のphp-fpm.confファイルがデフォルトの設定ファイル名を使用していないことでした-それは/etc/php5/fpm/php5-fpm.confphp5-fpm.confvs php-fpm.conf)という名前でした

php5-fpm -t  

[26-Jul-2014 22:39:16] ERROR: failed to open configuration file '/etc/php5/fpm/php-fpm.conf': No such file or directory (2)
[26-Jul-2014 22:39:16] ERROR: failed to load configuration file '/etc/php5/fpm/php-fpm.conf'
[26-Jul-2014 22:39:16] ERROR: FPM initialization failed

confファイルの名前をに変更しphp-fpm.conf、問題を修正しました。

sudo mv /etc/php5/fpm/php5-fpm.conf /etc/php5/fpm/php-fpm.conf
sudo service php5-fpm restart
 * Restarting PHP5 FastCGI Process Manager php5-fpm                                                                           [ OK ]

0

ログファイルがないというこの問題を経験したところ、HTTPではなくHTTPSを介してURLにアクセスしており、そのプロトコルがNginxで設定されていなかったため、PHP5-FPMがトラフィックを取得していませんでした。

誰かを助けるかもしれません。


0

php 7がphp-fpmを代わりに使用するため、Ubuntu dist-upgradeでパッケージphp5-fpmがアンインストールされる場合があります。コンソールでこれを実行してみてください:

php5-fpm

存在しない場合は、おそらくphp 7を使用しているので、インストールしてください。

apt-get install php-fpm

php7バージョンをインストールします

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.