
Tenho uma dúvida sobre como usar um computador como servidor web. Por que um determinado computador pode ser um servidor web? Quais recursos o tornam um servidor web? Existe algum caso em que um computador não consiga atuar como servidor web?
Responder1
Praticamente qualquer computador pode ser usado como servidor [web], desde que possa se conectar a uma rede e executar software de servidor web. Como um servidor web pode ser bastante simples, e existem servidores web gratuitos e de código aberto, na prática, qualquer dispositivo pode funcionar como um servidor web.
O maior problema é o lado da rede. Para que um sistema atue como servidor, outras máquinas precisam ser capazes de acessá-lo. Se for apenas para uso em uma LAN, não há preocupação; no entanto, se for para uso na Internet mais ampla, os dados precisarão ser roteados para ele. Isso requer um endereço IP estático associado ao servidor (ou porta encaminhada através de um roteador) ou um serviço externo que pode mapear um nome de domínio/subdomínio para um endereço IP dinâmico variável.
(FWIW, você pode comprarComputadores de US$ 10que pode atuar como um servidor web básico.)
É claro que, embora qualquer dispositivo possa atuar como servidor web, a funcionalidade dos sites pode variar enormemente, e um dispositivo barato (ou conexão lenta) pode não ser capaz de atender às demandas dependendo do site específico.
Observo que tudo acima fala sobre servidores web - mas o mesmo pode ser dito para praticamente qualquer tipo de servidor.
Responder2
Não é nada complicado. Depende apenas da sua definição de "servidor web".
É perfeitamente possível executar um “servidor web” em dispositivos tão simples como um microcontrolador.
Vamos considerar o que o servidor web mínimo precisaria fazer. Seria necessário enviar algum texto - não necessariamente em HTML para um cliente. Seria necessário saber que uma solicitação é uma solicitação e responder adequadamente. Você nem precisaria de conectividade de rede se o seu “cliente” fosse local. Seria um servidor web totalmente inútil.
Seria o servidor web equivalente aum desses.
Adicionar conectividade de rede para um cliente (Ethernet é bom, mas não há razão técnica para você não poder se conectar a um servidor web rodando em wifi) e poder rotear de um cliente seria melhor.
$ 5ESP8266– um microcontrolador barato e mínimo com wifi pode lidar com muito disso, e talvez até com conteúdo dinâmico básico
Eu uso algo assim para compartilhamento rápido de arquivos usando Python. Ainda é perfeitamente possível escrever algo assim em um microcontrolador ou até mesmo executá-lo em um telefone.
O conteúdo estático é chato. Adicione linguagens dinâmicas e você precisará começar a pensar em sistemas mais pesados. Coisas que rodam Linux ou Windows são legais.
Neste ponto, você está falando de roteadores de consumo, pequenos aplicativos que usam páginas da Web na interface do usuário e tudo mais.
Um servidor web nem é um problema complexo e pode ser escrito emcinco linhas de bashe execute no Linux. Agoraruína... Mas qualquer sistema que possa rodar o Doom pode rodar um servidor web.
Aboma configuração do servidor web capaz de lidar com uma determinada carga é um pouco mais complicada.
Responder3
Mínimo
Literalmente,qualquercomputador pode se tornar um servidor web se tiver o seguinte:
- Uma conexão de rede
- Um aplicativo de servidor web muito simples,assim.
Mas seria suficiente? Agora, essa é a pergunta complicada.
Servindo uma intranet
Para que um computador se torne um servidor web que sirva páginas web modernas ou aplicativos web para toda uma comunidade (por exemplo, escola, empresa, museu):
- Hardware capaz de responder vários computadores ao mesmo tempo. Talvez um computador antigo rodando Linux ou Windows XP servisse.
- Uma conexão de rede de alta velocidade com largura de banda suficiente, digamos Ethernet de 1 Gbit/s ou Wi-Fi 802.11g.
- Um bom aplicativo de servidor web, comoIIS,Apache,Nginxououtros. (Surpreendentemente, esses três são gratuitos.)
Mas isso era apenas o mínimo para pequenas operações.Quando sua operação fica maior (ou seja, você obtém um tráfego mais pesado e atende aplicativos web complexos em vez de páginas estáticas), suas necessidades aumentam. Eventualmente, você precisará de:
- Hardware de classe de servidor, como servidores montados em rack com várias CPUs Xeon e centenas de gigabytes de RAM
- Redes de fibra óptica
Servindo o mundo lá fora
Para explorar a infraestrutura da Internet para servir o mundo inteiro, você precisará de:
- Um endereço IP público
- Um servidor DNS público
- Certificados digitais emitidos porautoridades certificadoras respeitáveispara estabelecer uma conexão segura
Sem isso, tudo que você tem é umpotencialservidor web.
Responder4
Se você tiver em mãos algum tipo de computador (PC, laptop, smartphone, raspberryPI...) com Python instalado, basta digitar:
$ python -m SimpleHTTPServer
Ou se você tiver o Node.js instalado:
$ npm install http-server -g
$ http-server
Parabéns, você tem um servidor web!