tsv*_*der 2 nginx reverse-proxy node.js
我刚刚将 nginx 设置为反向代理,因此从该框提供的某些站点由它直接提供服务,而其他站点则转发到 Node.js 服务器。
然而,由 Node.js 提供服务的站点显示时没有 CSS 或图像,所以我认为链接以某种方式被破坏了,但不知道为什么。
以下是 /etc/nginx/sites-enabled 中唯一的文件:
server {
listen 80; ## listen for ipv4
listen [::]:80 default ipv6only=on; ## listen for ipv6
server_name dev.my.site;
access_log /var/log/nginx/localhost.access.log;
location / {
root /var/www;
index index.html index.htm;
}
location /myNodeSite {
proxy_pass http://127.0.0.1:8080/;
proxy_redirect off;
proxy_set_header Host $host;
}
}
Run Code Online (Sandbox Code Playgroud)
我原以为它可能是因为第一次进入而试图在 /var/www 中找到它们,但删除它似乎没有帮助。
没有更多细节,这只是一个猜测,但在您的前端,您已经在/myNodeSite
. 如果您的 node.js 站点返回如下内容:
<img src="/images/myimage.png"/>
Run Code Online (Sandbox Code Playgroud)
客户端将请求/images/myimage.png
...不会被定向到您的 node.js 站点,因为它不是以/myNodeSite
. 有几种解决方案:
nginx
,但是对于 Apache,有mod_proxy_html。您也可以/
在您的 node.js 站点上仅使用相对链接(无前导),但这意味着非常扁平的站点布局并且很容易被破坏。
归档时间: |
|
查看次数: |
1677 次 |
最近记录: |