10 de jan de 2008

Apache "caseiro" para meus alunos ansiosos :P


Instalando um servidor apache caseiro:

#apt-get install apache2

Feito isso o apache já deve estar no ar:
para testar, verifique seu ip de rede interna com o comando

#ifconfig

No meu caso é 192.168.1.100

Coloque esse ip (ou simplesmente escreva localhost) na barra de endereços do Firefox:

Se aparecer alguma coisa, beleza o apache já está instalado e rodando :)
Se não aparecer nada, verifique se o serviço do apache está iniciado, em caso de duvida reinicie o serviço:

#/etc/init.d/apache2 restart

Para testar seu servidor de páinas DENTRO da MESMA rede interna, você pode através de outro computador da sua casa (que esteja ligado no mesmo modem ou router) colocar o IP do servidor na barra de endereços do firefox e testar :)

No apache. as paginas "html" devem ser colocadas dentro do diretório /var/www.

Porque não posso testar meu servidor em uma máquina de fora? Como num cyber café por exemplo?

Resposta: Porque 192.168.x.x é endereço de rede INTERNA!
Apenas maquinas da mesma rede reconhecem seu servidor por esse IP.

Para que seu servidor de páginas funcione na internet, o certo seria que você contratasse junto ao seu provedor de acesso (brt, speedy, etc) um plano empresarial, com um ip VÁLIDO DE INTERNET FIXO e ALGUMAS PORTAS DO ROTEADOR DO PROVEDOR ABERTAS (80, 21, etc) para que você possa assim ter SERVIDORES na sua empresa.

Não preciso nem dizer o quanto essas criaturas cobram para isso né?

Pois bem, com nosso plano de banda larga simples, somos privados de várias coisas então precisamos apelar para a gambiarra!

Primeiro, mude a porta padrão do apache de 80 para 8080.

#vi /etc/apache2/ports.conf

Reinicie o serviço do apache.

#/etc/init.d/apache2 restart

A partir desse momento para acessar tua página pelo navegador deverás colocar a porta depois do ip do teu servidor:
ex:
192.168.1.100:8080

Não se esqueça disso!!

Se funcionou beleza!

Depois basta ir nas configurações do seu roteador e abrir a porta 8080 para o IP de rede interna do seu servidor.

Por exemplo:

Instalei o apache numa máquina cujo ip de rede interna é 192.168.0.100
Então nas configurações do router (no meu caso um Linksys) na parte referente à Port Range Forward (isso pode mudar dependendo do router) você diz que a porta 8080 será "encaminhada" para o ip de rede interna que corresponde ao teu servidor apache.

Feito isso REINICIE seu router.

Lembrando que o provedor de acesso só nos oferece UM ip de rede válido.
Se simplesmente consultarmos www.meuip.com.br, saberemos qual é o nosso IP DE REDE VALIDO e se colocarmos ele em um browser simplesmente,aparecerá um campo de login e senha para acessar o router da tua casa (por favor não deixem a senha como admin!!!) ou não aparecerá nada, caso o router seja bom e já esteja "protegido" contra esse tipo de acesso externo.
Agora que mudamos a porta do apache para acessar a página precisaremos colocar o ip E A PORTA!


No momento em que abrirmos a porta (8080) no router e dissermos para que essa requisição seja encaminhada para o servidor apache, sua página estará disponivel para o mundo através do teu ip de rede VALIDO e a porta.

ex: 200.11.65.12:8080

ou seja

ip-de-rede-valido:porta-do-apache

Quem usa virtua, raramente muda de endereço de ip, mas se seu endereço de ip Válido muda com frequencia, então uma boa alternativa é usar o no-ip.
Pois assim voce tera um dominio proprio (ex: http://teste.no-ip.com) e sempre que seu ip valido mudar, seu dominio será atualizado para o ip novo, redirecionando assim para o teu server apache :)

Mais informações sobre o no-ip na página: www.no-ip.com

Espero que tenha ajudado =P