Nginx中子目录的反向代理


12

我想设置我的VPS为我的Heroku应用反向代理(http://lovemaple.heroku.com)所以,如果我去拜访mysite.com/blog我就能得到上述内容中http://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

有什么问题,我该如何解决?


Answers:


5

您需要在HTML中修复引用,nginx不负责为您做这些。您可以将它们设置为与它们所在的目录无关:

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

(而不是"/style.css"


1

转到你的WordPress的数据库,并更新siteurlwp_optionshttp://lovemaple.heroku.com正常。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.