Diferentes formas de reiniciar PHP-FPM ⋆ ALexHost SRL

Pon a prueba tus habilidades en todos nuestros servicios de Hosting y ¡obtén un 15% de descuento!

Utiliza el código al pagar:

Skills
09.12.2024

Diferentes formas de reiniciar PHP-FPM

PHP-FPM (PHP FastCGI Process Manager) es un potente y ampliamente utilizado gestor de procesos para PHP, a menudo favorecido por su velocidad y capacidad para manejar sitios web de alto tráfico. Saber cómo reiniciar PHP-FPM es crucial para desarrolladores y administradores de sistemas, especialmente cuando se aplican cambios a configuraciones de PHP, se resuelven problemas o se realiza mantenimiento de rutina. En este artículo, exploraremos varios métodos para reiniciar PHP-FPM en diferentes sistemas y entornos.

¿Por qué reiniciar PHP-FPM?

Antes de sumergirnos en los métodos, discutamos brevemente por qué reiniciar PHP-FPM puede ser necesario:

  1. Cambios de Configuración: Si modifica la configuración de PHP en los archivos php.ini o php-fpm.conf, se requiere un reinicio para que los cambios surtan efecto.
  2. Optimización del rendimiento: Reiniciar PHP-FPM puede ayudar a liberar memoria y recursos, especialmente en sitios de alto tráfico.
  3. Resolución de errores: Si PHP-FPM encuentra problemas o deja de responder, el reinicio puede ayudar a resolver problemas temporales.
  4. Rotación de registros: Después de rotar los archivos de registro para PHP-FPM, un reinicio puede ser necesario para asegurar que los nuevos registros se escriban correctamente.

Prerrequisitos

Asegúrese de tener acceso root o los privilegios necesarios para reiniciar los servicios en su servidor. Dependiendo de su distribución de Linux, puede utilizar diferentes comandos como systemctl o service.

Método 1: Usando systemctl

En distribuciones modernas de Linux como Ubuntu 16.04 y CentOS 7, systemctl es el método estándar para administrar servicios, incluyendo PHP-FPM. He aquí como puede reiniciar PHP-FPM usando systemctl:

Reiniciar PHP-FPM

sudo systemctl restart php-fpm

Este comando reiniciará el servicio PHP-FPM, aplicando cualquier cambio en la configuración.

Detener e iniciar PHP-FPM

Si desea mayor control, puede detener e iniciar PHP-FPM manualmente:

sudo systemctl stop php-fpm
sudo systemctl start php-fpm

Esto puede ser útil si necesita asegurarse de que el servicio está completamente detenido antes de iniciarlo de nuevo.

Comprobar estado

Para asegurarse de que PHP-FPM se ha reiniciado con éxito, use:

sudo systemctl status php-fpm

Esto mostrará el estado del servicio PHP-FPM, incluyendo si está activo y cualquier mensaje de registro reciente.

Método 2: Usando el comando service

El comando service es comúnmente usado en distribuciones antiguas de Linux o para compatibilidad con versiones anteriores. A continuación se muestra como reiniciar PHP-FPM usando service:

sudo service php-fpm restart

O, para detener e iniciar el servicio por separado:

sudo service php-fpm stop
sudo service php-fpm start

Método 3: Reiniciar versiones específicas de PHP-FPM

Si tiene múltiples versiones de PHP instaladas, necesita especificar la versión de PHP-FPM que desea reiniciar. Por ejemplo, si tiene PHP 7.4 instalado, use el siguiente comando:

sudo systemctl restart php7.4-fpm

O con service:

sudo service php7.4-fpm restart

Este método es especialmente útil para entornos en los que se necesitan diferentes versiones de PHP para distintas aplicaciones o sitios web.

Método 4: Envío de señales directamente a PHP-FPM

Puede enviar señales directamente a PHP-FPM para recargar configuraciones sin reiniciar completamente el servicio. Este es un método más sutil que puede ser menos disruptivo para su tráfico web:

Recargar Configuración

Para recargar la configuración de PHP-FPM sin terminar los procesos existentes, use:

sudo kill -USR2 $(cat /run/php/php-fpm.pid)

Reemplace /run/php/php-fpm.pid con la ruta a su archivo PID actual si es diferente. Este método es útil cuando desea recargar cambios de configuración sin reiniciar todos los procesos de PHP-FPM.

Reinicio Gracioso

Un reinicio graceful permite a PHP-FPM terminar de servir peticiones en curso antes de reiniciar:

sudo kill -QUIT $(cat /run/php/php-fpm.pid)

Esto es especialmente útil en entornos de producción donde se quiere evitar interrumpir sesiones activas de usuarios.

Método 5: Usando pkill o killall

Si está enfrentando problemas con PHP-FPM y necesita detener forzosamente todos los procesos, puede usar pkill o killall. Este es un método más agresivo y debe ser usado con precaución:

sudo pkill php-fpm

O:

sudo killall php-fpm

Después de matar los procesos, necesita iniciar PHP-FPM manualmente:

sudo systemctl start php-fpm

Método 6: Usando el reinicio de Nginx o Apache

En algunos casos, reiniciar su servidor web puede indirectamente reiniciar PHP-FPM si está estrechamente acoplado con el proceso del servidor web. Así es como puede hacerlo:

Nginx

sudo systemctl restart nginx

Apache

sudo systemctl restart apache2

Aunque este método no se recomienda para problemas específicos de PHP-FPM, puede ser útil si está realizando mantenimiento en toda su pila web.

Mejores prácticas para reiniciar PHP-FPM

  • Revise los Registros: Antes de reiniciar, revise los registros de PHP-FPM en busca de errores o advertencias. Esto puede ayudar a identificar problemas subyacentes que pueden ser resueltos sin un reinicio.
  • Reinicios graceful en producción: Siempre prefiera un reinicio graceful en un ambiente de producción para evitar interrumpir a los usuarios.
  • Supervise el uso de recursos: Use herramientas como top, htop, o ps para monitorear los procesos de PHP-FPM antes y después de un reinicio para asegurar que está operando como se espera.

Conclusión

Reiniciar PHP-FPM es una tarea común con la que todo administrador o desarrollador de servidores debería estar familiarizado. Ya sea que esté usando systemctl, service, enviando señales, o realizando un reinicio graceful, conocer el método correcto para su situación puede asegurar un desempeño sin problemas y una interrupción mínima a sus servicios. Siguiendo las mejores prácticas, puedes mantener tu PHP-FPM funcionando eficientemente y manejar cualquier problema que pueda surgir con confianza.

Pon a prueba tus habilidades en todos nuestros servicios de Hosting y ¡obtén un 15% de descuento!

Utiliza el código al pagar:

Skills