
Estaba pensando que si una aplicación como Rails o Laravel puede recibir la solicitud de diferentes aplicaciones de servidor como Apache o nginx, ¿debe haber algún tipo o formato de solicitud que sigan los servidores para enviar la solicitud a las aplicaciones?
¿Qué formato es este?
¿O estoy conceptualizando esto mal?
Respuesta1
No estás conceptualizando esto mal, ¡tienes la idea correcta!
Hay varias maneras de hacer esto:
- Scripts CGI: el servidor web establece variables, ejecuta una aplicación para cada solicitud, pasa el cuerpo de la solicitud en stdin y espera una respuesta http en stdout.
- Proxy: la aplicación es su propio servidor web y nginx/apache simplemente le sirve de proxy
- uwsgi/fastcgi: la aplicación y Apache se comunican a través de un socket, utilizando un protocolo especial para transferir información de solicitud/respuesta
- Módulos integrados (por ejemplo, mod_php en Apache): el servidor web incorpora un intérprete para el idioma de su script.
Respuesta2
Creo que el término que está buscando es SAPI - Interfaz de aplicación de servidor genéricamente, ISAPI (IIS) y NSAPI (Netscape, ¿si todavía existen?) Más específicamente.
Consulte esta respuesta a una pregunta específica del idioma (PHP) sobre cómo funciona todo eso:https://stackoverflow.com/a/38669983/6867430