Nginx reescreve o referenciador http para https

1

Estou usando a diretiva proxy_pass para o servidor https upstream. O servidor proxy é destinado a clientes de rede local. No entanto, eu tenho um problema com o aplicativo django upstream rejeitando pedidos HTTP POST devido a um cabeçalho referer não seguro

link

É possível reescrever o cabeçalho http_referer para https? exemplo

 http://192.168.1.5/application/page -> https://upstream.backend/application/page
    
por Mr Hyde 17.12.2017 / 21:16

1 resposta

1

Sou mais experiente com o Apache. Mas os arquivos .conf são os mesmos.

Então, você basicamente quer reescrever todos os reqeuests HTTP para https?

E 192.168.1.5 resolve upstream.backend no seu DNS?

Se for esse o caso, e você está usando as revisões mais recentes, primeiro você precisa gerar um certificado SSL para usar .. Fácil, suponha que você esteja usando uma distrubution do Linux, então vou orientá-lo a fazê-lo via shell ou ssh:

  1. cd / etc / nginx
  2. sudo openssl req -x509 -nodes -days 365 -newkey rsa: 2048 -keyout /etc/nginx/cert.key -out /etc/nginx/cert.crt

neste ponto, insira suas informações e um certificado de 2048 bits (não assinado) será gerado e que você pode usar para a porta nginx 443. Como você está em uma Rede Local, a compra de um certificado SSL seria um desperdício.

A partir daqui, você precisa preencher / etc / nginx / sites-enabled / default com todas as informações acima, como domínios, localizações de certs (certifique-se de dizer ao nginx para escutar a porta 443) .. o próximo passo é para o passe de proxy:

localização / {

proxy_set_header        Host $host;
proxy_set_header        X-Real-IP $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header        X-Forwarded-Proto $scheme;

proxy_pass          http://192.168.1.5/application/page;
proxy_read_timeout  90;

proxy_redirect      http://192.168.1.5/application/page https://upstream.backend/application/page;

...

NOTA: Isso pode ou não funcionar, já que eu pulei algumas coisas que normalmente não usaria. Eu tentaria isso. Se o nginx não funcionar, o "aplicativo / página" tenta apenas o link e o link .

Se tudo mais falhar, procure "jenkins" com os quais não estou familiarizado.

Felicidades

    
por 17.12.2017 / 22:08