Um servidor da web é um software de serviço de recursos da web (servidor HTTP) ou um servidor de computador ( computador ) que responde a solicitações da World Wide Web em uma rede pública ( Internet ) ou privada ( intranet ), usando principalmente o protocolo HTTP .
Um servidor de computador pode ser usado tanto para servir os recursos da web e para operar em paralelo com outros serviços, como o envio de e-mails , emissão de fluxo de streaming , armazenamento de dados através de bases de dados , transferência de arquivos via FTP , etc.
Os servidores públicos da web são conectados à Internet e hospedam recursos ( páginas da web , imagens, vídeos, etc.) da web . Esses recursos podem ser estáticos (servidos como estão) ou dinâmicos (criados sob demanda pelo servidor).
Alguns servidores são acessíveis apenas em redes privadas ( intranets ) e hospedam sites de usuários, documentos ou softwares internos de uma empresa, uma administração, etc.
Tecnicamente, seria possível para o mesmo computador executar essas duas funções, mas raramente é o caso por razões de segurança . A principal função de um servidor da web é armazenar e entregar páginas da web que normalmente são renderizadas em HTML . O protocolo de comunicação HTTP ( Hypertext Transfer Protocol ) permite a comunicação através da rede com o software cliente, geralmente um navegador da web .
Ambos os termos são usados para o software porque o protocolo HTTP foi desenvolvido para a web e, na prática , as páginas da web ainda são servidas com esse protocolo. No entanto, outros recursos da Web, como arquivos para download ou fluxos de áudio ou vídeo, às vezes são servidos com outros protocolos, como, por exemplo, o protocolo de transporte em tempo real , além de ser seguro, o protocolo de transporte em tempo real seguro .
CERN httpd é o primeiro servidor HTTP, inventado ao mesmo tempo que a World Wide Web , em 1990 no CERN em Genebra, tornou-se rapidamente obsoleto devido à evolução exponencial das funcionalidades do protocolo.
Alguns servidores HTTP:
O servidor HTTP mais usado é o Apache HTTP Server, que atende cerca de 55% dos sites emJaneiro de 2013de acordo com a Netcraft .
O servidor HTTP mais utilizado nos 1.000 sites mais ativos, por outro lado, é o Nginx com 38,2 % de market share em 2016 de acordo com w3techs e 53,9 % emabril de 2017
Historicamente, outros servidores HTTP importantes foram CERN httpd , desenvolvido pelos inventores da Web, abandonado em15 de julho de 1996e NCSA HTTPd , desenvolvido no NCSA junto com o NCSA Mosaic , descontinuado em meados de 1994 , assim como WebObjects .
Existem também servidores HTTP que são servidores de aplicativos capazes de atuar como um servidor HTTP, como Caudium e GlassFish . Por outro lado, podemos encontrar servidores HTTP especializados em um serviço separado, como: Servidor de arquivos HTTP que se destina apenas ao compartilhamento de arquivos O software do servidor HTTP ou daemon HTTP é o software que suporta solicitações cliente-servidor do protocolo HTTP desenvolvido para a World Wide Web . Esses softwares geralmente integram módulos que permitem executar uma linguagem de servidor como o PHP para gerar páginas da web dinâmicas . Os mais conhecidos são Apache , Nginx , IIS e Lighttpd .
Na maioria das vezes, um servidor da web está continuamente executando outro software que funciona em conjunto com o software do servidor HTTP. Dependendo dos requisitos, alguns serviços que consomem muitos recursos, como o servidor de banco de dados , podem estar localizados na mesma máquina ou em um servidor dedicado.
Certas combinações de software de banco de dados são conhecidas por vários acrônimos, incluindo o software Apache ( servidor HTTP ) instalado e em execução no servidor web paralelo MySQL ( banco de dados do servidor ) e interpretação de script e execução de PHP (mesmo PHP-FPM ).
Veja em PDF a introdução “O que queremos dizer com servidor HTTP e servidor Web? »Por Anthony Garcia (2008) - IBISC :
Também existe a distribuição da Microsoft denominada IIS para "Internet Information Services" que inclui vários serviços: HTTP , FTP , SMTP e NNTP .
O balanceamento de carga do servidor web, ou balanceamento de carga do servidor web, agrupa todos os mecanismos usados para distribuir solicitações em vários servidores web. Essa prática tornou-se essencial desde a explosão do tráfego da web que resultou em um aumento significativo na carga solicitada do servidor. Isso levou a uma evolução das arquiteturas, com o objetivo de trazer mais escalabilidade , disponibilidade e desempenho.