Hoje será uma dica simples sobre o mod_proxy do apache. É um módulo do apache que permite que um usuário externo acesse uma url local. Por exemplo, permite que um usuário acesse uma url local como http://localhost:9955 via http://www.servidor_exemplo.com.br. Porém, ainda não aprendi como fazer exatamente isso. O que consegui fazer foi acessar http://localhost:9955 via http://www.servidor_exemplo:9955/. O que já foi o suficiente para resolver o problema.
Como fazer?
Como o uso do proxy requer uma aplicação sua já rodando na máquina, vamos considerar que você já tenha o apache rodando em sua máquina e que há uma aplicação local rodando no endereço: http://localhost:9955.
sudo apt-get install apache2
E para instalar o mod_proxy:
sudo apt-get install libapache2-mod-proxy-html
Feito isso, ative o mod_proxy (esta forma de ativar ativa todos os submódulos do mod_proxy, o que pode consumir recursos demais de seu servidor, mas é boa para fazer testes):
a2enmod proxy*
Ative o mod_proxy assim:
a2enmod proxy proxy_html
Já deve ser o suficiente, se não for, tente ir ativando os outros módulos um por um: proxy_ajp, proxy_balancer, proxy_connect, proxy_ftp e proxy_scgi.
Agora, vamos criar o proxy num arquivo de host do apache:
vim /etc/apache2/sites-available/exemplo-hostCom o seguinte conteúdo:
<VirtualHost>
ServerName www.servidor_exemplo.com.br
ProxyPreserveHost On
<Proxy>
ProxyPass http://localhost:9955/
ProxyPassReverse http://localhost:9955/
allow from all
</Proxy>
</VirtualHost>
ServerName www.servidor_exemplo.com.br
ProxyPreserveHost On
<Proxy>
ProxyPass http://localhost:9955/
ProxyPassReverse http://localhost:9955/
allow from all
</Proxy>
</VirtualHost>
Pronto! É só copiar esse arquivo para /etc/apache2/sites-enabled/:
cp /etc/apache2/sites-available/exemplo-host /etc/apache2/sites-enabled/exemplo-host
Ou utilizar o a2ensite:
a2ensite exemplo-host
Em seguida use o:
/etc/init.d/apache2 reload
/etc/init.d/apache2 restart
Se o seu host virtual para www.servidor_exemplo.com.br estiver configurado corretamente, o endereço www.servidor_exemplo.com.br:9955 vai começar a servir seu projeto local. ;)
Caso não saiba como configurar um host virtual, no caso, tudo que seria preciso é que o domínio www.servidor_exemplo.com.br aponte para o IP da máquina em que seu projeto está. O arquivo que criamos ali em cima já cria um host virtual para você.
Por hoje é só!
Vou fazer o possível para enviar ao menos um novo texto por semana.
Até mais!
Caso não saiba como configurar um host virtual, no caso, tudo que seria preciso é que o domínio www.servidor_exemplo.com.br aponte para o IP da máquina em que seu projeto está. O arquivo que criamos ali em cima já cria um host virtual para você.
Por hoje é só!
Vou fazer o possível para enviar ao menos um novo texto por semana.
Até mais!
Nenhum comentário:
Postar um comentário