Como configurar o Apache como proxy reverso
- 4231
- 69
- Mr. Mitchell Hansen
Um servidor de proxy reverso é um servidor da web que aceita solicitações de cliente e os rotula para o servidor de back -end apropriado. Nesse caso, o proxy reverso é o servidor voltado para a Internet, e os aplicativos de back-end estão em execução no localhost ou na rede LAN.
O Apache é o servidor da web mais popular que também pode ser configurado como um servidor de proxy reverso. Neste tutorial, você aprenderá sobre a configuração do servidor proxy reverso do Apache em um sistema Linux.
Cenário de Nework
Temos dois aplicativos que estão sendo executados com o servidor Tomcat na porta do local Host 8080. Não importa se os aplicativos estão em execução com o Tomcat ou qualquer outro serviço como NodeJs etc. Ambos os URLs de aplicações locais são:
- http: // localhost: 8080/Demo1
- http: // localhost: 8080/Demo2
Agora eu instalei o servidor Apache no mesmo host em execução na porta 80. O servidor Apache aceita as solicitações dos usuários da Internet e os encaminha para aplicativos correspondentes em execução no back -end. Precisamos configurar o proxy para encaminhar solicitações da seguinte forma:
- http: // Exemplo.com >> http: // localhost: 8080/demo1/
- http: // Exemplo.NET >> http: // localhost: 8080/Demo2/
- http: // domínio.com/Demo1/>> http: // localhost: 8080/Demo1/
- http: // domínio.com/Demo2/>> http: // localhost: 8080/Demo2/
Para ter uma compreensão melhor, consulte o diagrama abaixo:
Então, vamos começar a configuração:
Etapa 1: Configure o módulo Apache Proxy
Por padrão, este módulo está ativado no Apache para usuários instalados usando pacotes de RPM. Os usuários baseados em Debian precisam ativar módulos manualmente.
- Sistemas baseados em redhat: edite o arquivo de configuração de proxy /etc/httpd/conf.módulos.d/00-proxy.conf descomment as seguintes entradas. Se não estiver disponível, adicione -os.
LoadModule proxy_module módulos/mod_proxy.Então LoadModule proxy_http_module módulos/mod_proxy_http.então
- Sistemas baseados em Debian: use o seguinte comando para ativar o módulo proxy com Apache.
sudo a2enmod proxy proxy_http
Depois de ativar os módulos, você precisará reiniciar os serviços Apache para aplicar as alterações imediatamente.
Etapa 2: Configure o host virtual do Apache
Agora começará a trabalhar com o host virtual. Estamos criando três hosts virtuais como abaixo. Você cria apenas o que é necessário com as modificações necessárias. Edite o principal arquivo de configuração do Apache e comece com a configuração.
- Primeiro exemplo de host virtual:
Para encaminhar todas as solicitações enviadas ao exemplo.com o aplicativo correspondente do servidor Tomcat de back -end, como:
- http: // Exemplo.com >> http: // localhost: 8080/demo1/
Configure o primeiro host virtual como abaixo:
Exemplo de nome do servidor.com proxyrequests no proxypass/http: // localhost: 8080/Demo1/proxyPassReverse/http: // localhost: 8080/Demo1/12345678 Exemplo de nome do servidor.com proxyrequests no proxypass/http: // localhost: 8080/Demo1/proxyPassReverse/http: // localhost: 8080/Demo1/ - Segundo exemplo de host virtual:
Para encaminhar todas as solicitações enviadas ao exemplo.NET para Backend Tomcat Server correspondente Aplicativo como:
- http: // Exemplo.NET >> http: // localhost: 8080/Demo2/
Configurar um host virtual como este.
Exemplo de nome do servidor.Proxyrequests líquidos em proxypass/http: // localhost: 8080/Demo2/proxyPassReverse/http: // localhost: 8080/Demo2/12345678 Exemplo de nome do servidor.Proxyrequests líquidos em proxypass/http: // localhost: 8080/Demo2/proxyPassReverse/http: // localhost: 8080/Demo2/ - Terceiro exemplo de host virtual:
Para encaminhar todas as solicitações enviadas ao subdiretório/Demo1/OR/Demo2 em http: // domínio.com o tomcat de back-endcat correspondentes como aplicativos como:
- http: // domínio.com/Demo1/>> http: // localhost: 8080/Demo1/
- http: // domínio.com/Demo2/>> http: // localhost: 8080/Demo2/
Configurar um host virtual como este.
Domínio do nome do servidor.COM ProxyRequests no proxyPass/Demo1 http: // localhost: 8080/Demo1/proxyPassReverse/Demo1 http: // localhost: 8080/Demo1/proxyPass/Demo2 http: //pohost: 8080/DemoMO2/BOLSYPREPRE : 8080/ Demo2/ requerido concedido a todos os necessários concedidos a todos1234567891011121314151617 Domínio do nome do servidor.COM ProxyRequests no proxyPass/Demo1 http: // localhost: 8080/Demo1/proxyPassReverse/Demo1 http: // localhost: 8080/Demo1/proxyPass/Demo2 http: //pohost: 8080/DemoMO2/BOLSYPREPRE : 8080/Demo2/ Requerido concedido a todos Requerido concedido a todos
Etapa 3: reinicie o apache para aplicar alterações
Depois de criar com sucesso o host virtual do Apache, você precisa reiniciar o serviço Apache. Use os seguintes comandos para reiniciar o serviço Apache com base no sistema operacional.
- Sistemas baseados em Redhat:
sudo systemctl reiniciar httpd
- Sistemas baseados em Debed:
sudo systemctl reiniciar apache2
Conclusão
Esta postagem do blog ajuda você a configurar o Apache como um servidor proxy reverso em sistemas baseados em Debian ou Redhat. O proxy reverso faz uma ponte entre a Internet voltada para o servidor web e o aplicativo da web em execução como um serviço de back -end.
- « Como configurar o ambiente de desenvolvimento PHP no Ubuntu e Linuxmint
- Como editar o arquivo hosts em seu sistema »