Frage Wie starte ich php-fpm neu?


Ich muss meine php.ini neu laden und es gibt nichts im Hilfedialog, um es neu zu starten.


160
2017-10-12 01:58


Ursprung




Antworten:


Hinweis: vorgeben sudo wenn nicht root


294
2017-10-12 03:37



keiner von denen hat gearbeitet - Galen
Für Googler (wie ich), die hier ankommen: Diese Antwort war korrekt, aber auf meinem System hieß sie "php5-fpm", also service php5-fpm restart Hat den Trick gemacht. - Matt Winckler
Was ist mit einem Mac? php-fpm wurde mit Homebrew installiert. which php-fpm gibt /usr/local/sbin/php-fpm. - hobbes3
@ Hobbes3 versuchen brew services restart php56 (Wenn Sie eine Fehlermeldung über keine verfügbare Formel erhalten, versuchen Sie es mit einer anderen Version, z. B. php5 oder php55). Wenn Sie keine Brau-Services installiert haben, sollten Sie diese beim ersten Start installieren. - Doktor J
Ich brauchte dieses: sudo service php7.0-fpm restart - Ryan


Für Mac OS X mache ich Folgendes:

Mach ein Skript /usr/local/etc/php/fpm-restart:

#!/bin/sh

echo "Stopping php-fpm..."
launchctl unload -w ~/Library/LaunchAgents/homebrew-php*.plist

echo "Starting php-fpm..."
launchctl load -w ~/Library/LaunchAgents/homebrew-php*.plist

echo "php-fpm restarted"
exit 0

Dann:

chmod ug+x /usr/local/etc/php/fpm-restart
cd /usr/local/sbin
ln -s /usr/local/etc/php/fpm-restart

Stellen Sie sicher, dass / usr / local / sbin in Ihrem $ PATH enthalten ist

dann ruf es einfach vom terminal fpm-restart und BOOM !!


29
2017-09-23 04:55



Benutzen homebrew.mxcl.php*.plist wenn es nicht funktioniert - Daniil Ryzhkov
github.com/Homebrew/homebrew-php#installing-multiple-versions    Falls Sie diese .plist Datei nicht finden können. - Frank Fang


Meistens, service php5-fpm restart geht es gut, in einer aktuellen Distribution.

Aber manchmal versagt es Ihnen restart: Unknown instance: (oder so).

Wenn Sie Ihren Server nicht neu starten möchten, beenden Sie einfach die Prozesse und starten Sie neu (ab hier bearbeitet):

$ sudo pkill php5-fpm; sudo service php5-fpm start

21
2017-08-08 11:55



Danke, das hat genau mein Problem behoben. (stop: Unknown instance:) - Nilloc


Das sollte funktionieren:

pkill -o -USR2 php-fpm
pkill -o -USR2 php5-fpm

11
2018-02-01 20:08



Wenn Sie PHP-FPM über Homebrew auf einem Mac installiert haben, funktioniert der erste Befehl viel besser als das Laden und Laden des PLIST - alanthing
OSX: killall php-fpm - ptim
Unter OSX gab mir das oben einen Fehler "Unbekannter Benutzer SR2". Das Umkehren der Argumente hat es behoben: "pkill -USR2 -o php-fpm" - Keeth
Genau das, was ich brauchte, um FPM in einem Container neu zu starten, danke! - Adrian Günter
Ich benutze die vorinstallierte oder gebündelte Version von php und die dazugehörigen -fpm aus irgendeinem Grund und nicht über Homebrew. Ich dachte nur, ich sollte verwenden, was schon da ist. Ich benutze eine Kombination von php-fpm --prefix /usr/local, machen einige Verzeichnisse unter der, die es braucht, und wie @Keeth gesagt hat, pkill -USR2 -o php-fpmüberprüfen mit pgrep -l fpmund die PIDs ändern sich tatsächlich! Ich hatte keine Plist-Dateien oder Dienste, um die Vorteile einiger der anderen Antworten zu nutzen. - Pysis


Für Mac OSX brew services restart php56 hat für mich gearbeitet.


11
2017-12-30 21:25



Yup, funktioniert auch für mich. Mac OS X - Mike Nguyen


Ich hatte ein Problem, php7-fpm neu zu starten, weil ich nicht wusste, wie genau der Dienst benannt wurde. Diese Funktion gab mir die Antwort:

service --status-all

php7-fpm Dienst in meinem Ubuntu wurde aufgerufen php7.0-fpm, so tat ich:

service php7.0-fpm restart


8
2018-03-26 08:57



+1 für service --status-all - J.D.


php-fpm startet neu, wenn Sie ein USR2-Signal an den Hauptprozess senden:

sudo kill -USR2 php-fpm_main_process_id

Also müssen wir nur php-fpm anweisen, seine Pid irgendwo aufzuzeichnen. In diesem Beispiel nehme ich an, dass Sie es speichern möchten /etc/private/php-fpm.pid, und das php-fpm läuft als Benutzer _php. Fügen Sie diese Zeile zuerst zur Konfigurationsdatei hinzu:

pid = /etc/php-fpm.pid

Dann erstellen Sie die Datei /etc/php-fpm.pidund stelle sicher, dass php-fpm die Berechtigung hat, es zu ändern:

$ cd /etc
$ sudo touch php-fpm.pid
$ sudo chown _php php-fpm.pid
$ sudo chmod 644 php-fpm.pid

Jetzt, wenn php-fpm das nächste Mal gestartet wird, kannst du seine PID bekommen und es wie folgt neu starten:

$ cat /etc/php-fpm.pid
815
$ sudo kill -USR2 815

Oder Sie können diese zu einem einzigen Befehl kombinieren:

$ sudo kill -USR2 `cat /etc/private/php-fpm.pid`

5
2018-03-12 07:01



Ich mag @ DialT0Nes und @ Keeths pkill ... antworten & kommentieren oben mehr; kürzer und einfacher. - Pysis
Das ist besser und schöne Erklärung. Der pkill läuft das Risiko, wenn Sie die Prozesse nicht korrekt abgleichen, Ihre anderen PHP-Cluster zu löschen, wenn Sie sie auf der gleichen Box laufen haben (ja, das ist eine schlechte Praxis). - Rich K.


Für mich hatte ich gerade über apta upgegraded und der Dienstneustart funktionierte nicht. Ich musste die bestehenden Prozesse beenden, bevor es funktionierte: killall php5-fpm


3
2017-09-25 19:24





Damit das PHP-FPM-Neustart-Skript funktioniert, müssen Sie eine PID-Datei in Ihrer php-fpm.conf-Datei angeben. d.h.

pid = /var/run/php-fpm/php-fpm.pid

Der Standardwert für pid in php-fpm.conf ist nichts, was bedeutet, dass keine PID-Datei erstellt wird, was bedeutet, dass das Neustart-Skript nicht erkennen kann, welcher Prozess während des Neustarts beendet werden soll.


2
2018-05-11 15:03





Auf CentOS 7

sudo systemctl enable php-fpm // Just incase is disabled. Also ensures it starts automatically with the server

sudo systemctl start php-fpm  // Start the service

sudo systemctl stop php-fpm   // Stop the service

sudo systemctl status php-fpm  // View status

2
2018-06-28 10:44