Como redirecionar seu site para https atrás de um balanceador de carga da AWS
- 867
- 161
- Mr. Mitchell Hansen
Nas instâncias da AWS EC2, seu servidor da web está ouvindo na porta 80 para aceitar conexões HTTP. Posteriormente, você configurou o Amazon Elastic Load Balancer (ELB) para ouvir o tráfego HTTP e HTTPS e encaminhar todas as solicitações para o servidor de back -end apenas na porta 80. O Amazon Elastic Load Balancer (ELB) suporta o X-forwarded-proto Valor do cabeçalho, que inclui o protocolo do aplicativo.
O X-forwarded-proto O valor do cabeçalho da solicitação HTTP é usado neste tutorial e as regras de reescrita são aplicadas se o protocolo do cliente não for https.
Aqui está como forçar um redirecionamento para o HTTPS por trás do AWS ELB usando servidores Web Apache, Nginx ou IIS.
1. Apache
Adicionando uma regra de redirecionamento HTTPS ao seu Apache VirtualHost ou .O arquivo htaccess é uma maneira fácil de redirecionar todo o tráfego para o seu site para usar o HTTPS. Você pode fazer isso adicionando o seguinte código ao seu virtualhost ou .Arquivo HTACCESS:
RewriteEngine on RewritOnd %http: x-forwarded-proto !https rewriture ^.*$ https: //%server_name%request_uri123 | RewriteEngine on RewritOnd %http: x-forwarded-proto !https rewriture ^.*$ https: //%server_name%request_uri |
O código acima é um exemplo de uma regra de redirecionamento HTTPS que pode ser adicionada a um .arquivo htaccess. Quando essa regra é adicionada, verifica se o cabeçalho X-forwarded-proto não está definido como HTTPS e, se não for, redireciona todo o tráfego para usar HTTPS usando o %server_name e %request_uri variáveis. Isso é útil em cenários em que o site está por trás de um balanceador de carga ou um proxy, e o cabeçalho X-forwarded-proto é usado para passar informações sobre o protocolo do cliente para o servidor. Adicionando este código ao seu .Arquivo Htaccess, todo o tráfego para o seu site será redirecionado para usar HTTPS, garantindo que seu site seja seguro e criptografado.
2. Nginx
Edite o bloco do servidor HTTP nginx para que seu domínio configure o redirecionamento de força. Adicione o seguinte conteúdo no bloco de localização para redirecionar todo o tráfego HTTP para HTTPS.
localização / if ($ http_x_forwarded_proto != 'https') rewrite ^ https: // $ host $ request_uri? permanente;1234 | localização / if ($ http_x_forwarded_proto != 'https') rewrite ^ https: // $ host $ request_uri? permanente; |
A configuração do NGINX acima é um exemplo de uma regra de redirecionamento HTTPS que pode ser adicionada a um bloco de localização no arquivo de configuração nginx. Quando essa regra é adicionada, verifica se o cabeçalho X-forwarded-proto não está definido como HTTPS e, se não for, ele usa a diretiva de reescrita para redirecionar todo o tráfego para usar HTTPS usando as variáveis $ host e $ request_uri. A instrução IF é usada para verificar a variável http_x_forwarded_proto, que é definida como https quando a conexão é segura. Ao adicionar este código ao seu arquivo de configuração nginx, todo o tráfego para o seu site será redirecionado para usar https, garantindo que seu site seja seguro e criptografado.
3. Iis
Os servidores do Windows com o IIS Web Server editão ou criam o rede.Config
Arquive e adicione o seguinte código na seção:
1234567891011 |
Conclusão
Seguindo estas quatro etapas, você pode redirecionar seu site facilmente para HTTPS por trás de um balanceador de carga da AWS. Com um certificado SSL/TLS, configuração de balanceador de carga, redirecionar a criação de regras e atualização de registro DNS, você pode garantir que todo o tráfego para o seu site seja criptografado e seguro.
- « Como instalar adições de convidados do VirtualBox no Fedora 29-25, CentOS 7/6
- Como publicar dados JSON com PHP CURL »