it-swarm.com.de

Wie starte ich php-fpm neu?

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

184
Galen

Hinweis : Sudo voranstellen, wenn nicht root

  • SysV Init-Skripte direkt verwenden:

    /etc/init.d/php-fpm restart    # typical
    /etc/init.d/php5-fpm restart   # debian-style
    /etc/init.d/php7.0-fpm restart # debian-style PHP 7
    
  • Verwenden des Service-Wrapper-Skripts

    service php-fpm restart    # typical
    service php5-fpm restart   # debian-style
    service php7.0-fpm restart # debian-style PHP 7
    
  • Verwenden von Upstart (z. B. Ubuntu):

    restart php7.0-fpm         # typical (ubuntu is debian-based) PHP 7
    restart php5-fpm           # typical (ubuntu is debian-based)
    restart php-fpm            # uncommon
    
  • Verwenden von systemd (neuere Server):

    systemctl restart php-fpm.service    # typical
    systemctl restart php5-fpm.service   # uncommon
    systemctl restart php7.0-fpm.service # uncommon PHP 7
    

Oder was auch immer das Äquivalent auf Ihrem System ist.

335
tylerl

Für Mac OS X mache ich Folgendes:

Erstellen Sie 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 !!

30
Diego Antunes

Normalerweise, service php5-fpm restart reicht für eine aktuelle Distribution aus.

Aber manchmal scheitert es und sagt dir 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
22
BurninLeo

Das sollte funktionieren:

pkill -o -USR2 php-fpm
pkill -o -USR2 php5-fpm
13
dialt0ne

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

12
Blake Frederick

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

service --status-all

der php7-fpm-Dienst in meinem Ubuntu hieß php7.0-fpm, so tat ich:

service php7.0-fpm restart

12
Lucas

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

Sudo kill -USR2 php-fpm_main_process_id

Wir müssen also nur php-fpm anweisen, seine PID irgendwo aufzuzeichnen. In diesem Beispiel gehe ich davon aus, dass Sie es unter /etc/private/php-fpm.pid Speichern möchten und dass php-fpm als Benutzer _php ausgeführt wird. Fügen Sie zunächst diese Zeile zur Konfigurationsdatei hinzu:

pid = /etc/php-fpm.pid

Erstellen Sie dann die Datei /etc/php-fpm.pid Und stellen Sie sicher, dass php-fpm die Berechtigung zum Ändern hat:

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

Wenn php-fpm das nächste Mal gestartet wird, können Sie die PID abrufen und 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`
6
Pitarou

Für mich hatte ich gerade ein Upgrade über apt durchgeführt und der Neustart des Dienstes funktionierte nicht. Am Ende musste ich die vorhandenen Prozesse beenden, bevor es mit: killall php5-fpm funktionierte

3
Pooch

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

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

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

2
Danack

Unter Ubuntu 16 mit PHP 5.6 fpm.

 /etc/init.d/php5.6-fpm restart
2
MrPHP

Unter 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
Fokwa Best

Unter RedHat/CentOS 7 mit PHP 7 von softwarecollections.org

service rh-php70-php-fpm start
service rh-php70-php-fpm stop
service rh-php70-php-fpm reload
service rh-php70-php-fpm restart
service rh-php70-php-fpm status

oder wenn Sie systemctl verwenden:

systemctl start rh-php70-php-fpm
systemctl stop rh-php70-php-fpm
systemctl reload rh-php70-php-fpm
systemctl restart rh-php70-php-fpm
systemctl status rh-php70-php-fpm
1
Jeremy Tarpley

Der einfachste Weg, den Namen des php-fpm-Dienstes zu finden, besteht darin, danach zu suchen:

systemctl -l --type service --all | grep fpm
1
Saman Mohamadi

Verwenden Sie zum Auflisten von Systemdiensten unter CentOS/RHEL 7.x +

systemctl

So listen Sie alle Dienste auf:

systemctl list-unit-files

Hier finden Sie den Dienst mit dem Namen * php-fpm * Kopieren des Dienstnamens und führen den folgenden Befehl aus

systemctl starte ea-php72-php-fpm.service neu

HINWEIS :ea-php72-php-fpm.service Benutzer Ihren Dienstnamen

0

Auf Alpine mit Nginx funktioniert das hier:

So beenden Sie alle php-fpm7-Prozesse:

kill $(ps -o pid,comm | grep php-fpm7 | awk '{print $1}')

So starten Sie php-fpm7:

php-fpm7

0
Junior M

Für alte Versionen von debian & ubuntu - php 5.6 wird es sein

 /etc/init.d/php-fpm56 restart
 service php-fpm56 restart
0

Unter Windows:

  1. Öffnen Sie Dienste in der Verwaltungskonsole:

    Start -> Run -> "services.msc" -> OK
    
  2. Wählen php-fpm von der Liste

  3. Klicken Sie mit der rechten Maustaste und wählen Sie Neustart
0