Proxy inverso para un subdirectorio en nginx

12

Quiero configurar un proxy inverso en mi VPS para mi aplicación Heroku ( http://lovemaple.heroku.com ) Entonces, si lo visito mysite.com/blog, puedo obtener el contenido en http://lovemaple.heroku.com

Seguí las instrucciones en el wiki de Apache .

    location /couchdb {
        rewrite /couchdb/(.*) /$1 break;
        proxy_pass http://localhost:5984;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

Lo cambié para adaptarse a mi situación:

    location /blog {
        rewrite /blog/(.*) /$1 break;
        proxy_pass http://lovemaple.heroku.com;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

Cuando visito mysite.com/blog, aparece la página, pero no se puede obtener el archivo js / css (404).
Su vínculo se hace mysite.com/style.csspero no mysite.com/blog/style.css.

¿Qué pasa y cómo puedo solucionarlo?

Arce
fuente

Respuestas:

5

Debe corregir las referencias en su HTML, nginx no es responsable de hacerlo por usted. Puede configurarlos para que sean independientes de en qué directorio residen:

<link rel="stylesheet" type="text/css" href="style.css">

(en lugar de "/style.css")

Shane Madden
fuente
1

Ir a la base de datos de WordPress, y actualizar siteurlen wp_optionsque http://lovemaple.heroku.comestá bien.

jxltom
fuente