"Olá, amigo!"
"Olá, Bilaabo! O que vamos fazer hoje?"
"Hoje vou explicar como instalar um servidor web Tomcat."

"O que é um servidor web? O que é um servidor normal?"
"Existe uma maneira de os programas interagirem chamada de relacionamento cliente-servidor. O servidor atende às solicitações dos clientes. Os clientes enviam suas solicitações ao servidor, e o servidor as atende e retorna o resultado."
"Imagine um vendedor atendendo clientes em uma loja. Nesse caso, o vendedor é na verdade o atendente, os clientes da loja são os clientes, e o produto vendido pelo vendedor é o resultado do processamento do pedido (resultado do trabalho do atendente) ."
"Em outras palavras, um servidor é aquele que atende às solicitações/pedidos/necessidades de um cliente, certo?"
"Sim."
"Ok, então o que é um servidor web?"
"Um servidor web é um programa que atende a solicitações de página dos navegadores dos usuários."
"Quando você insere um URL específico em um navegador, a solicitação vai para o servidor, o servidor processa a solicitação, gera uma página da Web e a envia de volta ao navegador."

"O servidor da Web é o servidor. O navegador é o cliente. A URL é a solicitação. A página da Web é o resultado do processamento da solicitação."
"Ah. A situação está ficando cada vez mais clara. Em outras palavras, um servidor web é um programa(?) que gera páginas para navegadores. Certo?"
"Sim."
"Vamos pegar uma URL comum:"
Analisando URLs |
---|
http://codegym.cc/alpha/api/contacts ? _ _ _ _ userid=13&filter=none&page=3 |
Descrição das partes de um URL |
codegym.cc é o nome de domínio o nome único (endereço) de um computador na Internet |
http é o protocolo para comunicação cliente-servidor |
alpha/api/contacts é a solicitação do servidor da web ou solicitação de uma página da web no servidor |
userid=13 &filter=none & page=3 é a solicitação do servidor da web ou solicitação de uma página da web no servidor |
"Dê uma olhada. Pegamos um computador e o conectamos à Internet."
"Então compramos um nome de domínio para ele."
"Em seguida, executamos um servidor da Web nele."
"Agora você pode enviar solicitações para este servidor web a partir de qualquer navegador inserindo uma URL com seu nome de domínio."
"Eu acho que entendi."
"Vou compartilhar uma analogia para deixar tudo um pouco mais claro."
Analisando conversas |
---|
Português :// Jason / passe-me a pasta ? número=13 |
Descrição das partes do |
Jason é o nome exclusivo de um computador na Internet |
Inglês é o protocolo para comunicação cliente-servidor |
pass me folder é a solicitação do servidor da web ou a solicitação de uma página da web no servidor |
number=13 é uma string com os parâmetros do pedido |
"Ah. Isso realmente está mais claro. Obrigado."
"Isso não é tudo. Às vezes, vários servidores da Web são executados em um único computador. Para distingui-los, eles recebem números."
"Pense em um domínio como um prédio. Se uma família mora no prédio, você deve escrever algo como «5 Third Anti-Martian Uprising St.» ao enviar-lhes uma carta."
"Agora imagine que várias famílias moram no prédio."
"Como um prédio de apartamentos?"
"Exatamente! É muito parecido. Obrigado pela analogia."
"Dentro do prédio, há muitos apartamentos. Alguns apartamentos estão desocupados. Alguns são ocupados por servidores da web. E quando você envia uma solicitação para um servidor da web, também deve especificar o número do apartamento. Em uma URL, esse número é chamado de porta."
"Por exemplo:"
http://codegym.cc:80/alpha/api/contacts ? _ _ _ _ userid=13&filter=none&page=3 |
http://codegym.cc:8080/alpha/api/contacts ? _ _ _ _ userid=13&filter=none&page=3 |
http://codegym.cc:443/alpha/api/contacts ? _ _ _ _ userid=13&filter=none&page=3 |
"Na realidade, todos os servidores são prédios de apartamentos. E cada um tem 65.000 apartamentos (portas)."
"Por que 65.000?"
"Dois bytes são usados para indicar um número de porta. 65536 é o maior valor inteiro com dois bytes."
"Cada protocolo (http, https, ftp, ...) tem sua própria porta padrão."
"Se o número do apartamento (porta) não for especificado, a porta padrão do protocolo será usada."
"Se o protocolo for http, então a porta é 80. Se o protocolo for https, então a porta é 443, etc."
"Em outras palavras, as seguintes entradas são equivalentes:"
URL | O que realmente significa |
---|---|
http://www.mail.google.com _ | http://www.mail.google.com : 80 |
http://codegym.cc _ | http://codegym.cc : 80 |
http://codegym.cc/alpha _ | http://codegym.cc : 80 /alpha |
https://codegym.cc/api?x _ | https://codegym.cc : 443 /api?x |
"E se a porta for 444, mas o protocolo for https?"
"Eu já lhe disse. Se a porta não for especificada, ela será determinada com base no protocolo. Se for especificada, a porta especificada será usada."
"Eu vejo."
"Você sabe como os humanos às vezes usam pronomes em vez de nomes: eu, você, ele, …?"
"Sim, mas as pessoas são inerentemente estranhas. Eu tento não prestar atenção nisso."
"Bem, os computadores também têm um nome de domínio que significa 'eu'. É 'localhost'."
"Se você inserir localhost em seu navegador, o navegador acessará seu computador."
"E se você tiver um servidor da Web instalado, ele enviará uma página da Web para o navegador."
"Legal! Quero iniciar um servidor web e abrir páginas no navegador."
"Diga-me como fazer isso, Bilaabo. Por favor!!! Você é meu amigo, certo?"
"Bilaabo faria qualquer coisa por um amigo."
"Ouça."
Passo 1 |
---|
Instale o Kit de Desenvolvimento Java (JDK) |
Resultado |
O JDK está instalado |
"Bilaabo, sou um programador nível 30. Instalei o JDK há muito tempo!"
"Ótimo, então vamos continuar."
Passo 2 |
---|
Baixar Tomcat 9 |
Dica 1: |
Use Google |
Dica 2: |
Página oficial do Apache Tomcat |
Dica 3 (link direto para usuários do Windows): |
Baixar Apache Tomcat |
"Entendi."
"Ótimo."
etapa 3 |
---|
Instalar o Tomcat 9 Use as configurações de instalação padrão. Não mude nada. |
Tela 3 |

Tela 4 |
---|

"Aqui você pode definir o nome e a porta do servidor web. O padrão é a porta 8080.
Não altere nada. Deixe tudo como está."
Tela 5 |
---|

Especifique a pasta onde o JDK está instalado
Tela 6 |
---|

Tela 7 |
---|

"Sim. Acabei de clicar em Avançar e é isso."
"Ótimo. Agora você tem um servidor da Web Tomcat 9 instalado e em execução, atendendo solicitações na porta 8080. Essa é a porta padrão para desenvolvimento de software."
"Ok, então eu tenho o Tomcat, mas como posso escrever um programa para ele?"
"Quero que gere algo interessante - algum tipo de página da web interessante."
"OK, eu vou te dizer como fazer isso depois de uma pequena pausa."
GO TO FULL VERSION