为什么当我调用“远程页面”时样式表会被忽略?

为什么当我调用“远程页面”时样式表会被忽略?

我现在正在玩 node.js。我很喜欢它。我遇到了一个奇怪的错误。如果我使用以下命令启动测试服务器

node app.js

并导航至http://本地主机:3000,一切都很好。样式表已加载,一切看起来都正常。但是,如果我通过 nginx 导航到该站点,则该站点和样式表已加载,但似乎被忽略了。这是相同的源代码。它以相同的方式解析。我已经测试过,样式表已正确加载。我真的不知道了。还有其他人吗?

这是我的 nginx vhost 配置:

server {
    listen 80;
    server_name expressapp.lc;

    root /home/matthias/Documents/webapps/expressapp/public;

    location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
        expires         15d;
    }

    location / {
        proxy_pass              http://127.0.0.1:3000;
        proxy_set_header        X-Real-IP       $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header        Host            $http_host;
        proxy_set_header        X-NginX-Proxy   true;
        proxy_redirect off;
    }

    gzip on;
    gzip_comp_level 2;
    gzip_proxied any;
    gzip_min_length  1000;
    gzip_disable     "MSIE [1-6]\."
    gzip_types text/plain text/css application/json application/x-javascript text/xml   application/xml application/xml+rss text/javascript;
}

感谢您的帮助。

答案1

为了使事情更清楚,你应该:

  1. 删除允许客户端缓存的位置部分。
  2. 关闭 gzip 压缩,例如注释掉所有 gzip 注释
  3. 将“proxy_set_header Host $http_host”更改为“proxy_set_header Host $host”

相关内容