Nginx

Nginx redireciona HTTP para HTTPS

Nginx redireciona HTTP para HTTPS
Nginx, pronunciado como "Engine x", é uma web de alto desempenho baseada em Linux gratuita e de código aberto e um servidor proxy reverso responsável por gerenciar e manipular a carga do maior tráfego de sites na internet. Nginx é uma ferramenta de redirecionamento poderosa que pode ser configurada facilmente em seu sistema para redirecionar o tráfego da web HTTP menos seguro ou não criptografado para um servidor da web HTTPS criptografado e protegido. Se você é um administrador de sistema ou desenvolvedor, está usando o servidor Nginx regularmente.

Neste artigo, vamos trabalhar como redirecionar o tráfego da web de HTTP para um HTTPS seguro em Nginx.

As respostas e solicitações são retornadas na forma de texto simples em HTTP, enquanto o HTTPS usa SSL / TLS para criptografar a comunicação entre o sistema cliente e servidor. Portanto, devido a vários motivos, HTTPS é usado sobre o HTTP, que estão listados abaixo:

É preferível redirecionar o tráfego HTTP para HTTPS no Nginx em um bloco de servidor separado para cada versão do site. Também é recomendado evitar o redirecionamento do tráfego usando a direção “se”, que pode causar um comportamento incomum do servidor.

Redirecionar todo o tráfego de HTTP para HTTPS

Adicione as seguintes alterações ao arquivo de configuração Nginx para redirecionar todo o tráfego da versão HTTP para HTTPS:

servidor
escuta 80 default_server;
nome do servidor _;
return 301 https: // $ host $ request_uri;

Abaixo, elaboramos cada termo acima mencionado:

Listen 80 default_server - isso irá sinalizar seu sistema que captura todo o tráfego HTTP na porta 80.
Nome_do_servidor _ - é o domínio que corresponderá a qualquer nome de host.

Retorne 301 https: // $ host $ request_uri - informa aos seus mecanismos de pesquisa que o redirecionam permanentemente. Ele especifica que a variável $ host contém os nomes de domínio.

Depois de alterar as configurações, você precisa recarregar os serviços Nginx em seu sistema. Portanto, recarregue seus serviços Nginx usando o seguinte comando:

$ sudo systemctl reload nginx

Redirecionar HTTP para versão HTTPS para domínio especificado em Nginx

Depois de instalar o certificado SSL em seu domínio, você terá duas opções de bloqueio de servidor para este domínio. Um bloco é para a versão HTTP ouvindo na porta 80 e a segunda versão é HTTPS na porta 443. No entanto, para redirecionar um único domínio de site de HTTP para HTTPS, você precisa abrir a configuração do Nginx. Você pode localizar este arquivo de configuração no diretório / etc / nginx / sites-available. Em qualquer caso, se você não encontrou este arquivo, você pode procurá-lo com / etc / nginx / nginx.conf, / usr / local / nginx / conf ou / usr / local / etc / nginx e, em seguida, execute as seguintes alterações neste arquivo:

servidor
escute 80;
server_name domain-name.com www.nome do domínio.com;
retornar 301 https: // nome-do-domínio.com $ request_uri;

Vamos entender o código acima linha por linha.
Listen 80 - usando a porta 80, o servidor escutará todas as conexões de entrada do domínio especificado.

Nome_do_servidor nome de domínio.com www.nome do domínio.com - especifica os nomes de domínio. Portanto, substitua-o pelo nome de domínio do seu site que você deseja redirecionar.

Retorne 301 https: // domain-name.com $ request_uri - move o tráfego para a versão HTTPS do site. A variável $ request_uri é usada para o URI do pedido original completo, no qual os argumentos também estão incluídos.

Usando o método a seguir, você pode redirecionar o tráfego para a versão HTTPS www para a versão não www do site. Recomenda-se criar um redirecionamento em um bloco de servidor separado para as versões não-www e www.

Vamos explicar com um exemplo. Se você deseja redirecionar as solicitações www HTTPS para a versão não www, você deve seguir a seguinte configuração:

servidor
escute 80;
server_name domain-name.com www.nome do domínio.com;
retornar 301 https: // nome-do-domínio.com $ request_uri;

servidor
ouvir 443 ssl http2;
server_name www.nome do domínio.com;
#… Outro código
retornar 301 https: // nome-do-domínio.com $ request_uri;

servidor
ouvir 443 ssl http2;
server_name domain-name.com;
#… Outro código

Substitua o nome do domínio pelo seu domínio, como www.linuxhint.com.

Conclusão

Discutimos como redirecionar o tráfego da versão HTTP para HTTPS no servidor Nginx. Ao alterar a configuração do arquivo de configuração Nginx, você pode redirecionar facilmente o tráfego para HTTPS para um domínio especificado ou redirecionar todos. Este método, que mencionamos neste artigo, pode ajudá-lo a tornar seu site mais seguro, fazendo quaisquer alterações na experiência do usuário.

Como aumentar o FPS no Linux?
FPS significa Quadros por segundo. A tarefa do FPS é medir a taxa de quadros em reproduções de vídeo ou desempenho de jogos. Em palavras simples, o nú...
Top jogos do Oculus App Lab
Se você é proprietário de um fone de ouvido Oculus, deve estar informado sobre o carregamento lateral. Sideload é o processo de instalação de conteúdo...
Os 10 melhores jogos para jogar no Ubuntu
A plataforma Windows tem sido uma das plataformas dominantes para jogos devido à grande porcentagem de jogos que estão sendo desenvolvidos hoje para o...