183 votos

¿Cómo se reinicia el php-fpm?

Necesito recargar mi php.ini y no hay nada en el diálogo de ayuda sobre cómo reiniciarlo.

335voto

tylerl Puntos 8195

Nota : prepender sudo si no es root

  • Usando SysV Init scripts directamente:

    /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
  • Usando la envoltura de servicio script

    service php-fpm restart    # typical
    service php5-fpm restart   # debian-style
    service php7.0-fpm restart # debian-style PHP 7
  • Usando Upstart (por ejemplo, ubuntu):

    restart php7.0-fpm         # typical (ubuntu is debian-based) PHP 7
    restart php5-fpm           # typical (ubuntu is debian-based)
    restart php-fpm            # uncommon
  • Usando systemd (servidores más nuevos):

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

O lo que sea el equivalente en su sistema.

2 votos

¿Y en un Mac? php-fpm fue instalado usando homebrew. which php-fpm da /usr/local/sbin/php-fpm .

6 votos

@hobbes3 intentar brew services restart php56 (si te da un error de que no hay fórmula disponible, prueba con otra versión, por ejemplo, php5 o php55). Si no tienes instalado brew services, debería instalarlo por ti en la primera ejecución.

0 votos

Nada de lo anterior me funcionó, pero esto sí: service php-fcgi-mydomain-com restart Y tuve que repetirlo para cada dominio de los sitios habilitados

30voto

Diego Antunes Puntos 181

Para Mac OS X, esto es lo que hago:

Haz un guión /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

Entonces:

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

asegúrese de que /usr/local/sbin está en su $PATH

entonces sólo llámalo desde la terminal fpm-restart y ¡¡¡BOOM!!!

4 votos

Utilice homebrew.mxcl.php*.plist si no funciona

0 votos

github.com/Homebrew/homebrew-php#installing-multiple-versions en caso de que no pueda encontrar el archivo .plist.

0 votos

brew services básicamente hace lo que su script hace.

22voto

BurninLeo Puntos 135

Normalmente, service php5-fpm restart lo hará bien, en una distribución actualizada.

Pero a veces, falla, diciéndote restart: Unknown instance: (o algo así).

Ahora, si no le gusta reiniciar su servidor, simplemente mate los procesos y tenga un nuevo comienzo (editado a partir de aquí):

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

0 votos

Gracias, esto arregló exactamente mi problema. ( stop: Unknown instance: )

13voto

dialt0ne Puntos 2275

Esto debería funcionar:

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

3 votos

Si has instalado PHP-FPM a través de homebrew en un Mac, el primer comando funciona mucho mejor que unload+load'ing el plist

0 votos

OSX: killall php-fpm

0 votos

En OSX lo anterior me dio un error "Usuario desconocido SR2". Invirtiendo los argumentos se arregló: "pkill -USR2 -o php-fpm"

2voto

Danack Puntos 429

Para permitir que el reinicio de PHP-FPM script funcione, debe usar especificar un archivo PID en su archivo php-fpm.conf. i.e.

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

El valor por defecto para pid en php-fpm.conf es nada, lo que significa no crear un archivo PID, lo que significa que el reinicio script no puede decir qué proceso terminar durante el reinicio.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: