php_sapi _eol php sapi

php_sapi - php_eol



¿Qué es SAPI y cuándo lo usarías? (4)

De la Wikipedia :

En otras palabras, SAPI es en realidad una interfaz de programación de aplicaciones (API) proporcionada por el servidor web para ayudar a otros desarrolladores a ampliar las capacidades del servidor web.

Como ejemplo, PHP tiene una interfaz de módulo directa llamada SAPI para diferentes servidores web; en el caso de PHP 5 y Apache 2.0 en Windows, se proporciona en forma de un archivo DLL llamado php5apache2.dll, que es un módulo que, entre otras funciones, proporciona una interfaz entre PHP y el servidor web, implementada en una forma que el servidor entiende. Esta forma es lo que se conoce como SAPI.

Hay diferentes tipos de SAPI para varias extensiones de servidor web. Por ejemplo, otros dos SAPI para el lenguaje PHP son Common Gateway Interface (CGI) y Command Line Interface (CLI).

He estado aprendiendo sobre el manejo de errores en PHP recientemente y encontré la función error_log() .

En el manual de PHP, se tratan todos los tipos de registro de errores y los entiendo a todos excepto el tipo 3, que establece que el mensaje de error se envía directamente al controlador de registro de SAPI. Mi pregunta es ¿qué es exactamente SAPI y cuándo quieres usarlo?


Para PHP, los SAPI disponibles son: Apache2 (mod_php), FPM, CGI, FastCGI y CLI.

Es discutible si la API se ejecuta en el servidor se puede llamar SAPI.

Permítanme recordarles que FPM (FastCGI Process Manager) está muy cerca de la implementación PHP FastCGI con algunas características adicionales (la mayoría) útiles para sitios de carga pesada.

Hoy, desde la perspectiva de la velocidad y la eficiencia, FPM sería la SAPI más evolucionada. Apache o Nginx realizarán una mejor comparación de los otros SAPI mencionados.


SAPI significa "Servidor API". Es el mecanismo que controla la interacción entre el "mundo exterior" y el motor PHP / Zend. Entonces, siempre quisieras usarlo. De hecho, no puede evitar usarlo sin mucho esfuerzo ya que incluso la CLI se considera una SAPI.


SAPI (Interfaz de programación de aplicaciones de servidor) también se conoce como ISAPI (Interfaz de programación de aplicaciones de servidor de Internet) para Microsoft, NSAPI (Interfaz de programación de aplicaciones de servidor Netscape) para Netscape.

Significado API

Para el desarrollador web, puede pensar en API como REST, SOAP. Llamas a un enlace para obtener datos del servidor. Te permite interactuar con el servidor web.

SAPI es diferente con REST o SOAP, SAPI es API (contrato) utilizado para el servidor.

Por ejemplo: Common Gateway Interface es un SAPI. Si un servidor web admite CGI y otro programa ejecutable, impleméntelo para que el servidor web pueda interconectarse y generar páginas web dinámicamente.

Mira la imagen a continuación:

mod_php implementa una interfaz que apache y php pueden entenderse entre sí.

Entonces, ¿qué es exactamente SAPI ? Es un contrato entre el Servidor (cualquier clase de servidor) y el programa. Simplemente siga el contrato y no necesitan saber otros detalles secundarios.