我想为我的Heroku应用程序在我的VPS上设置一个反向代理( http://lovemaple.heroku.com )所以如果我访问mysite.com/blog
我可以得到http://lovemaple.heroku.com中的内容
我遵循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; }
我改变了它适合我的情况:
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
。
怎么了,我该如何解决?
您需要修复HTML中的引用,nginx不负责为您做这件事。 您可以将它们设置为不知道它们所在的目录:
<link rel="stylesheet" type="text/css" href="style.css">
(而不是"/style.css"
)