Cómo configurar Nginx como proxy inverso

Cómo configurar Nginx como proxy inverso

Estoy intentando configurar nginx para que se comporte como un proxy inverso que escucha en un subdominio que controlamos. He seguido ejemplos encontrados en línea y en su mayoría funcionan con una excepción que no me queda clara.

Inspeccione el bloque del servidor a continuación:

server{
    listen *:80;
    server_name placehold.com;
    charset utf-8;

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log error;

    location / {
        proxy_redirect          off;
        proxy_set_header        Host            $host;
        proxy_set_header    X-Real-IP       $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        client_max_body_size    10m;
        client_body_buffer_size 128k;
        proxy_connect_timeout   90;
        proxy_send_timeout      90;
        proxy_read_timeout      90;
        proxy_buffers           32 4k;

        proxy_pass http://google.com/;
    }
}

google.com es un marcador de posición para esta prueba.

Si visito una URL como "http://placehold.com/test"Esto funciona perfectamente, me redirige a alguna página de error de Google y la URL en el navegador permanece como tipos. Pero si pongo una URL simple como "http://placehold.com/" luego redirige mi navegador a la página de inicio de Google y la URL de Google se muestra claramente en el navegador.

¿Cómo puedo hacer que el proxy inverso enmascare correctamente la URL para las URL '/' así como para las URL '/con/alguna/ruta'?

Respuesta1

Tu proxy está funcionando bien. Vueltas visitantes http://google.com:

301 Moved Permanently
Location:https://www.google.com/

Su navegador está siendo redirigido ahttp://www.google.com

información relacionada