Proxy inverso per una sottodirectory in nginx


12

Voglio configurare un proxy inverso sul mio VPS per la mia app Heroku ( http://lovemaple.heroku.com ) Quindi, se visito, mysite.com/blogposso ottenere il contenuto in http://lovemaple.heroku.com

Ho seguito le istruzioni sul wiki di 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;
    }

L'ho cambiato per adattarmi alla mia situazione:

    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;
    }

Quando visito mysite.com/blogla pagina viene visualizzata, ma non è possibile ottenere il file js / css (404).
Il loro collegamento diventa mysite.com/style.cssma non mysite.com/blog/style.css.

Cosa c'è che non va e come posso ripararlo?


Risposte:


5

Devi correggere i riferimenti nel tuo HTML, nginx non è responsabile di farlo per te. Puoi impostarli in modo che siano agnostici nella directory in cui risiedono:

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

(invece di "/style.css")


1

Vai alla banca dati del tuo wordpress, e aggiornare siteurlin wp_optionsa http://lovemaple.heroku.comè OK.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.