Nginx perde porto no redirecionamento

3

Eu tenho um site do Wordpress rodando em um ambiente de desenvolvimento do Vagrant. Quando eu carrego http://localhost:8080 , o site funciona bem, mas assim que eu tento acessar o administrador indo até http://localhost:8080/wp-admin , sou redirecionado para http://localhost/wp-admin/ .

Duas coisas aqui:

  1. O Nginx está forçando a barra final (que eu não estou fazendo intencionalmente, afaik, mas estaria bem).
  2. No redirecionamento da barra à direita, a porta está se perdendo (o que não é muito bom).

Eu tentei adicionar a diretiva port_in_redirect (usando os dois valores, para ser honesto) que eu já vi em outras respostas para perguntas semelhantes, mas isso não mudou nada.

Alguma ideia do que me falta?

    
por Rob Wilkerson 29.01.2013 / 23:13

3 respostas

0

Você precisa usar proxy_redirect para modificar o cabeçalho de resposta para que localhost seja reescrito em localhost: 8080

    
por 30.01.2013 / 04:53
0

O padrão proxy_redirect ao usar um proxy_pass dentro de um location (adaptado ao seu caso de uso) é:

location / {
  proxy_pass     http://localhost:8080/;
  proxy_redirect http://localhost:8080/ /;
}

Como você está usando a mesma porta 8080 no Vagrant, isso corresponderá e removerá a porta.

Existem duas soluções fáceis para evitar isso:

  1. Encaminhe para uma porta diferente na configuração do vagrant para que proxy_redirect não corresponda.
  2. Desativar proxy_redirect usando proxy_redirect off; .

(Eu sei que isso foi há 4 anos, mas eu acabei de ter um problema semelhante ao testar o KeyCloak, então espero que esta resposta ajude outras pessoas que enfrentam este problema.)

    
por 16.02.2017 / 11:33
0

Se você notar que o WordPress está fazendo um redirecionamento (ao contrário do NGINX, como você já verificou), certifique-se de que as configurações do wordpress dentro do banco de dados estejam corretas.

Isso ocorre porque o Wordpress mantém o URL completo do site dentro de uma tabela de banco de dados chamada wp_options

Em uma instalação padrão, essas opções para o URL têm os ID de opção 1 e 2 e um valor de chave de siteurl e home . Você pode usar ferramentas como o PhpMyAdmin para modificar o banco de dados para modificar esses valores, para corrigir os problemas de redirecionamento.

    
por 17.09.2018 / 08:49

Tags