Modos de funcionamiento del intérprete PHP

Una comparación de los modos de ejecución de PHP: mod_php, CGI, FastCGI y LSPHP.

PHP como módulo de Apache (mod_php)

En este modo, mod_php se carga directamente en Apache y está presente en cada proceso de Apache. Es la opción más adecuada para sitios pequeños con poco tráfico.

Ventajas:

  • la ejecución de scripts más rápida en comparación con los demás modos;
  • configuración sencilla — el servidor procesa los scripts por sí solo;
  • un único archivo de configuración php.ini se aplica a todos los scripts;
  • los parámetros de PHP pueden definirse en la configuración de Apache o mediante .htaccess.

Desventajas:

  • todos los scripts se ejecutan bajo la cuenta de usuario del servidor web, por lo que los directorios que requieren acceso de escritura deben tener permisos de escritura para todos;
  • cuando los scripts lanzan procesos externos (p. ej., envíos de correo), es imposible identificar qué usuario los desencadenó;
  • el procesamiento de scripts añade carga a Apache y puede ralentizar la entrega de archivos estáticos;
  • los errores en los scripts pueden provocar la caída del servidor web completo.

PHP como CGI

En este modo, se lanza un proceso php-cgi independiente para cada solicitud. Funciona bien para sitios mayoritariamente estáticos, ya que el intérprete solo se carga cuando es necesario — ahorrando RAM. El inconveniente es una ejecución más lenta, ya que debe iniciarse un nuevo proceso en cada solicitud.

Ventajas:

  • los scripts se ejecutan bajo la cuenta de usuario del propietario del dominio;
  • PHP puede configurarse de forma individual para cada usuario;
  • menor consumo de memoria en comparación con mod_php;
  • los errores en los scripts no provocan la caída del servidor web.

Desventajas:

  • la autenticación PHP mediante Header() puede no funcionar correctamente, ya que algunas variables del servidor no se pasan al script PHP.

Nuestros servicios y productos

HostingFunciona en discos NVMe ultrarrápidos. Apto para sitios web de cualquier complejidad.
Pedir
VPSParámetros ajustables y configuración flexible del SO. Administración gratuita incluida.
Pedir
Servidores dedicadosDisponibles diversas configuraciones Supermicro con procesadores Intel y AMD.
Pedir

PHP como FastCGI

FastCGI se sitúa entre mod_php y CGI — combina las ventajas de ambos modos y elimina el principal inconveniente de CGI. Un proceso handler persistente se mantiene en memoria, por lo que no es necesario lanzar un nuevo proceso en cada solicitud. En términos de velocidad, FastCGI es comparable a mod_php. Es la mejor opción para sitios de alto tráfico con un flujo constante de solicitudes.

Ventajas:

  • los datos intermedios se almacenan en caché, por lo que los scripts no se reinterpretan en cada solicitud — más rápido que CGI;
  • los scripts se ejecutan bajo la cuenta de usuario del propietario del dominio.

Desventajas:

  • el proceso php-cgi permanece en memoria tras la primera solicitud.

LSPHP

LiteSpeed PHP (LSPHP) está implementado como el módulo mod_lsapi para Apache y es la opción de ejecución de PHP más eficiente en servidores con cPanel.

Ventajas:

  • procesamiento de scripts PHP más rápido;
  • sin errores 500 causados por php_flag y directivas similares en .htaccess — útil al migrar desde un hosting que usaba mod_php;
  • menor consumo de recursos;
  • mayor eficiencia del Opcode Cache.

Instalación de módulos PHP

Los módulos PHP se instalan a través del panel de control ISPmanager, en la sección PHP.

Ejecutar un script PHP desde cron

Para ejecutar un script PHP mediante el planificador cron, especifica la ruta completa al intérprete antes de la ruta del script:

/usr/bin/php-cgi /(ruta)/script.php

El script puede estar ubicado en cualquier directorio, incluidos los que no son accesibles por FTP.

Ayuda

¿Tienes dudas o necesitas ayuda? Escríbenos a través del sistema de tickets — siempre estamos aquí para ayudarte!

¿Necesitas ayuda?Nuestros ingenieros te ayudarán gratuitamente con cualquier pregunta en minutosContáctanos