Qual formato o nginx e o apache seguem para enviar a solicitação ao aplicativo?

Qual formato o nginx e o apache seguem para enviar a solicitação ao aplicativo?

Eu estava pensando que se um aplicativo como Rails ou Laravel pode receber a solicitação de diferentes aplicativos de servidor, como Apache ou Nginx, deve haver algum tipo ou formato de solicitação que os servidores sigam para atender a solicitação aos aplicativos.

Que formato é esse?

Ou estou conceituando isso errado?

Responder1

Você não está conceituando isso errado, você tem a ideia certa!

Existem várias maneiras de fazer isso:

  • Scripts CGI: o servidor web define variáveis, executa uma aplicação para cada solicitação, passa o corpo da solicitação em stdin e espera uma resposta http em stdout
  • Proxy: o aplicativo é seu próprio servidor web e o nginx/apache simplesmente faz proxy para ele
  • uwsgi/fastcgi: a aplicação e o apache se comunicam através de um soquete, usando um protocolo especial para transferir informações de solicitação/resposta
  • módulos integrados (por exemplo, mod_php no apache): o servidor web incorpora um interpretador para a linguagem do seu script.

Responder2

Acho que o termo que você está procurando é SAPI - Server Application Interface genericamente, ISAPI (IIS) e NSAPI (Netscape, se ainda existirem?) Mais especificamente.

Confira esta resposta para uma pergunta específica da linguagem (PHP) sobre como tudo isso funciona -https://stackoverflow.com/a/38669983/6867430

informação relacionada