通过nginx而不是明确

时间:2015-07-09 11:19:54

标签: node.js express nginx

我知道这个主题有很多主题,但遗憾的是到目前为止他们都没有帮助过我。我有一个明确的应用程序,并提供我的静态文件:

 app.use(express.static(path.join(__dirname, 'public'), { maxAge: 86400000 }));

现在我还在使用nginx,并且只想通过nginx提供我的静态内容,所以我评论了上面这一行并将以下内容添加到我的sites-enabled/default nginx配置中:

server {
    listen 443 ssl;
    // certificate, server_Name

    location ~^/(images/|img/|javascript/|js/|css/|stylesheets/|flash/|media/|static/|robots.txt|humans.txt|favicon.ico) {
       root /path/to/my/project/public/;
       access_log off;
       expires 24h;
     }
}

location / {
    proxy_redirect off;
    proxy_pass https://127.0.0.1:8443;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_set_header   X-NginX-Proxy    true;
    proxy_set_header   Connection "";
    proxy_cache_bypass $http_upgrade;
    proxy_cache one;
    proxy_cache_key sfs$request_uri$scheme;
}

从我目前所读的内容来看,第一个位置块应该处理静态文件的提供(我的所有静态文件都位于public下)。但当我开始这样的应用程序时,我得到ERR_TOO_MANY_REDIRECTS。只有在我从我的网站上面添加快速配置后才能运行。

如何通过nginx正确提供静态内容? 有没有人对我做错了什么有一些指导?

0 个答案:

没有答案