web-dev-qa-db-ja.com

nginxのサブディレクトリのリバースプロキシ

Herokuアプリ用のVPSにリバースプロキシを設定したい( http://lovemaple.heroku.com )したがって、mysite.com/bloghttp://lovemaple.heroku.com でコンテンツを取得できます

Apache wiki の指示に従いました。

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

私は自分の状況に合わせて変更しました:

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

私が訪れたときmysite.com/blog、ページは表示されますが、js/cssファイルを取得できません(404)。
それらのリンクはmysite.com/style.css だがしかし mysite.com/blog/style.css

何が問題で、どうすれば修正できますか?

12
Maple

HTMLの参照を修正する必要があります。nginxはそれを行う責任を負いません。それらが存在するディレクトリに依存しないように設定できます。

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

(の代わりに "/style.css"

5
Shane Madden

ワードプレスのデータベースに移動し、wp_optionssiteurlhttp://lovemaple.heroku.comに更新しても問題ありません。

1
jxltom