Como manter o proxy reverso do NGINX redirecionado para longe do host local?

1

Então, tenho o que parece ser um problema aparentemente simples, mas sou muito novo nisso. Eu configurei um proxy reverso para o meu ambiente de desenvolvimento, e eu tenho várias máquinas que executam aplicativos diferentes, então eu tenho eles rodando em localhost com portas diferentes, obviamente. Sempre que eu atingir um local, digamos localhost/location1 e localhost/location2 , ele faz um proxy_pass para localhost:8000 e localhost:4343 . No entanto, quando eu atingi o local da raiz visto abaixo no meu navegador, o URL muda para a URL real do proxy_pass https://develop.example.com/; em vez de apenas dizer localhost, o que eu esperaria que fizesse como todos os outros. Então, por que isso muda o URL? Eu até tentei fazer um passe de proxy para o google, que funciona como esperado, diz apenas localhost, mas mostra uma página do google 404. Qualquer insight e / ou sugestões sobre como posso depurar isso seria apreciado.

location / {
  proxy_set_header Host $host;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header X-Forwarded-Proto $scheme;
  proxy_set_header X-Forwarded-URI $request_uri;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-Published-On https://develop.example.com/;

  proxy_pass https://develop.example.com/;
  #proxy_pass http://www.google.com/;

  index index.php;
}
    
por user3832583 15.07.2017 / 05:28

1 resposta

0

Adicione um proxy_redirect .

proxy_redirect https://develop.example.com/ /;

Isto irá reescrever o URL base na saída do proxy_pass para que os links, etc., apontem para o proxy.

    
por 16.07.2017 / 19:45