Korzystam z PHP-FPM i Nginx, czasami z jakiegokolwiek powodu muszę zrestartować serwer. Po ponownym uruchomieniu serwera usługa nginx uruchamia się automatycznie, jednak PHP-FPM nie. Można to zobaczyć, gdy uruchamiam polecenie sudo /etc/init.d/php-fpm restart
natychmiast po ponownym uruchomieniu i uzyskuję wynik:
$ sudo /etc/init.d/php-fpm restart
Stopping php-fpm: [FAILED]
Starting php-fpm: [ OK ]
Czy to oczekiwane zachowanie? Jaki jest najlepszy sposób na automatyczne uruchomienie PHP-FPM? Czy jest gdzieś opcja konfiguracji, czy muszę dodać polecenie do jednego ze skryptów startowych systemu Linux?
Dzięki.
yum install -y php-fpm
Odpowiedzi:
Skonfiguruj go tak, aby zaczynał się przy rozruchu:
źródło
Właśnie natrafiłem na ten problem na Ubuntu 16.04 i zostawiam tutaj swoją odpowiedź dla przyszłych użytkowników Google, którzy natkną się na problem. Ponieważ
chkconfig
jest głównie specyficzny dla CentOS, oczywiście nie istnieje na Ubuntu. Najwyraźniej, aby uzyskać niestandardowy PHP (php-fpm
SAPI) do uruchamiania przy rozruchusystemd
, co jest nowością w Ubuntu 16.04 (wcześniej Upstart), musi być zarejestrowany w systemie poza zwykłym wpuszczenieminit.d
skryptu/etc/init.d/
. Aby zarejestrować skrypt, uruchomiłem:A
reboot
i kolejneps aux
potwierdziły, żephp-fpm
rzeczywiście zaczyna się od rozruchu. Zostało również dodane do/etc/init.d/.depend.start
.Inne przemyślenia: Ubuntu Upstart był na tyle miły, że nigdy nie musiałem biegać
update-rc.d
po umieszczeniu skryptu init.d - po prostu działało. Całkowicie zapomniałem o tym poleceniu.źródło
sudo
może być potrzebne do tego polecenia.