Nginx enviando 301 ao usar proxy_pass

Nginx enviando 301 ao usar proxy_pass

Tenho um site hospedado na AWS,www.exemplo.com. Criei um blog no Wix myblog.wixsite.com/blog. Agora, quero mostrar o conteúdo de myblog.wixsite.com/blog emwww.exemplo.com/blog. Então usei o seguinte conf Nginx para tentar conseguir isso.

location /blog/ {
          sub_filter 'http://myblog.wixsite.com/' 'https://$http_host/blog/';
          sub_filter 'https://myblog.wixsite.com/' 'https://$http_host/blog/';
          sub_filter 'href="/posts/' 'href="/blog/';
          sub_filter 'href="/category/' 'href="/blog/category/';
          sub_filter 'href="/authors/' 'href="/blog/authors/';
          sub_filter 'href="/recent/' 'href="/blog/recent/';

          proxy_ssl_verify off;
          proxy_set_header Host "myblog.wixsite.com";
          proxy_set_header X-Forwarded-Host "";
          proxy_set_header X-Forwarded-For "";
          proxy_set_header Accept-Encoding "";
          proxy_set_header Cookie "";

          proxy_pass http://myblog.wixsite.com/blog/;

          proxy_redirect ~^(http://[^/]+)(/.+)$ https://$http_host$2;
        }

Agora, quando eu batiwww.exemplo.com/blog, o Nginx me redireciona parahttps://myblog.wixsite.com/blog/em vez de mostrar o conteúdo emwww.exemplo.com/blogem si. Também tentei mudar proxy_pass http://myblog.wixsite.com/blog/;para, proxy_pass https://myblog.wixsite.com/blog/; mas comecei a receber o seguinte erro.

*532 SSL_do_handshake() failed (SSL: error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error) while SSL handshaking to upstream, client: <redacted>, server: www.example.com, request: "GET /blog/ HTTP/2.0", upstream: "https://myblog.wixsite.com/blog/", host: "www.example.com"

Estou nisso há alguns dias sem resultados. Alguém pode sugerir o que posso estar fazendo de errado?

Responder1

Ou useproxy_redirectou mudar

proxy_pass http://myblog.wixsite.com/blog/; to 
proxy_pass https://myblog.wixsite.com/blog/;

Observe que o protocolo é httpsem vez de http. De qualquer forma, seu blog wix é veiculado em HTTPS.

Responder2

Não é o nginx que envia o redirecionamento, é o site https://myblog.wixsite.com/blog/que envia o redirecionamento, o nginx apenas faz proxy da resposta que obtém do site.

informação relacionada