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?¿Qué es SAPI y cuándo lo usarías?
Respuesta
SAPI significa "API del servidor". 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.
De Wikipedia:
En otras palabras, SAPI es en realidad una interfaz de programación de aplicaciones (API) que proporciona el servidor web para ayudar a otros desarrolladores en la ampliación de las capacidades de 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.
Existen 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).
SAPI (interfaz de programación de aplicaciones de servidor), también conocido como ISAPI (Servidor de Internet Application Programming Interface) para Microsoft, NSAPI (Application Programming Interface servidor Netscape) para Netscape.
API significado.
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 una 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.
miran el cuadro a continuación:
mod_php implementar una interfaz que Apache y PHP pueden entenderse entre sí.
Entonces, ¿qué es SAPI exactamente: es un contrato entre el servidor (cualquier tipo de servidor) y el programa. Simplemente siga el contrato y no necesitan saber otros detalles secundarios.
¿Puede decirme de dónde se toma esta fotografía?Estoy buscando material sobre el tema con exactamente este tipo de ilustración gráfica. – dwytrykus
No recuerdo exactamente. Después de algunos buscar lo viejo. Encuentro uno: http://www.slideshare.net/do_aki/php-and-sapi-and-zendengine2-and. Espero que ayudes. –
- 1. ¿Qué es SELF JOIN y cuándo lo usarías?
- 2. ¿Qué es el bloqueo en MySQL y cuándo lo usarías?
- 3. MSBuild: ¿Qué es y cuándo lo necesito?
- 4. ¿Qué es asincrónico y espera y cuándo los usarías en el desarrollo de Windows?
- 5. ¿Cuándo usarías delegados en C#?
- 6. ¿Qué es un Manifiesto en Scala y cuándo lo necesitas?
- 7. ¿Qué es un bus de servicio y cuándo lo necesito?
- 8. ¿Qué es una CLASE ABSTRACTA e INTERFAZ y cuándo las usarías en PHP?
- 9. ¿Cuándo usarías $ this keyword en PHP?
- 10. ¿Por qué usarías umask?
- 11. ¿Qué es una secuencia (Base de datos)? ¿Cuándo lo necesitaríamos?
- 12. ¿Qué son aserciones? y por qué los usarías?
- 13. ¿Cuándo usarías una matriz en lugar de un vector/cadena?
- 14. ¿Qué es ct100 y cómo lo cambio?
- 15. ¿Qué es makeinfo y cómo lo obtengo?
- 16. ¿Por qué usarías Assert.ReplaceNullChars (entrada de cadena)?
- 17. ¿Qué algoritmo usarías para codificar un loro?
- 18. ¿Qué es Request.InputStream y cuándo usarlo?
- 19. ¿Qué es ICustomTypeDescriptor y cuándo usarlo?
- 20. ¿Qué es __declspec y cuándo debo usarlo?
- 21. ¿Qué es exactamente streambuf? ¿Como lo uso?
- 22. stdafx.h: ¿Cuándo lo necesito?
- 23. Delphi SAPI Text-To-Speech
- 24. Marshalling: ¿qué es y por qué lo necesitamos?
- 25. ¿Qué es el/elemento? ¿Como lo uso? ¿Y por qué?
- 26. ¿Qué es Repo y por qué lo usa Google?
- 27. lo que es Contexto Android y por qué es necesario
- 28. ¿Usarías Code Bubbles?
- 29. ¿Cuándo Google Analytics no es lo suficientemente bueno?
- 30. ¿Ir o no ir con Liferay? ¿Qué es lo bueno, lo malo y lo feo?
+0, Elaboración de necesidades. – Pacerier
Entonces, ¿cómo se puede saber qué es lo que su registrador SAPI tiene en una configuración en ejecución perfectamente ensamblada por el mantenedor de paquetes? (para hacer que registre los mensajes que desea ver desesperadamente :).) – n611x007