GNU/Linux >> Linux の 問題 >  >> Linux

php5-fpm の起動に失敗した理由を確認するにはどうすればよいですか?

解決策 1:

error_log を確認しましたか php-fpm のファイル ?そのファイルの場所は 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

たぶん、これは何か面白いことを示しています。

解決策 2:

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

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

解決策 3:

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

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

他の人にも役立つことを願っています。

解決策 4:

私にとって、問題は私の php-fpm.conf でした ファイルはデフォルトの構成ファイル名を使用していませんでした - 名前は /etc/php5/fpm/php5-fpm.conf でした ( php5-fpm.conf vs 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 ]

Linux
  1. Linux でどのプロセスがファイルをロックしているかを調べるにはどうすればよいですか?

  2. ファイルの MIME タイプ (Content-Type) を調べるにはどうすればよいですか?

  3. テキストファイルの行末を見つける方法は?

  1. Linux の <conio.h> ヘッダー ファイルはどこにありますか? <conio.h> が見つからないのはなぜですか?

  2. Linuxでファイルを使用しているプロセスを見つける方法は?

  3. APT にインストールできるパッケージのバージョンを確認する方法

  1. 名前と部分パスでファイルを検索するにはどうすればよいですか?

  2. 特定のセクターにあるファイルを見つける方法

  3. サーバーに何らかの IPMI があるかどうかを確認するにはどうすればよいですか?