再起動後にPHP-FPMが自動的に起動しない


15

PHP-FPMとNginxを実行していますが、何らかの理由でサーバーを再起動する必要がある場合があります。サーバーが再び実行されると、nginxサービスが自動的に開始されますが、PHP-FPMは開始されません。これはsudo /etc/init.d/php-fpm restart、リブート直後にコマンドを実行して結果を取得したときに表示されます。

$ sudo /etc/init.d/php-fpm restart
Stopping php-fpm:                                          [FAILED]
Starting php-fpm:                                          [  OK  ]

これは予想される動作ですか?PHP-FPMを自動的に起動する最良の方法は何ですか?どこかに設定オプションがありますか、それともLinux起動スクリプトの1つにコマンドを追加する必要がありますか?

ありがとう。


どのLinuxディストリビューションを使用していますか?どのようにしてphp-fpmをインストールしましたか?パッケージまたはソースから?
トニン

Amazon EC2 Linuxインスタンスで実行され、PHP-FPMは次を使用してインストールされましたyum install -y php-fpm
SteveEdson

回答:



4

Ubuntu 16.04でこの問題に出くわしたので、この問題に出くわしたGoogleの将来のユーザーのために、ここに答えを残しておきます。以来chkconfig、主にCentOSのに固有のもので、それは明らかにUbuntuの上に存在しません。どうやら、Ubuntu 16.04(以前のUpstart)の新機能であるカスタムビルドPHP(php-fpmSAPI)を起動時に起動するsystemdには、init.dスクリプトをにドロップするだけでなく、システムに登録する必要があります/etc/init.d/。スクリプトを登録するために、私は実行しました:

update-rc.d php-fpm defaults

A reboot以降は、起動時に実際に開始ps auxされることphp-fpmを確認しました。にも追加されました/etc/init.d/.depend.start

その他の考え:Ubuntu Upstartは十分に素晴らしかったのでupdate-rc.d、init.dスクリプトを配置した後に実行する必要はありませんでした。そのコマンドを完全に忘れていました。


2
最初の質問はAmazon Linuxについてでしたが、どれだけの数のUbuntuユーザーがそれを見るかは言えません。16.04とsystemdに関しては、古いスタイルの新興企業や古代のinitスクリプトではなく、適切なsystemdユニットを使用します。distroパッケージまたは他の場所で使用可能なsystemdユニットを見つけることができるはずです。
マイケルハンプトン

私はUbuntu 14.04ユーザーであり、これは私を助けてくれました、ありがとう!PS:sudoそのコマンドに必要な場合があります。
エドソン・ホラシオジュニア
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.