【问题标题】:node.js server to return /, static files from /public/ via nginx?node.js服务器通过nginx从/public/返回/,静态文件?
【发布时间】:2011-04-09 08:27:04
【问题描述】:

我对 Rasmus Andersson 很棒的 node.js EC2 模板http://rsms.me/2011/03/23/ec2-wep-app-template.html 有一点问题@

好的,问题是

我希望由 node.js 服务器(侦听端口 3000)传递根 url http://www.mydomain.com/ 响应

nginx 仍应从 /public/ 传递所有静态内容(因此 nginx 应首先查看 /public/,如果不存在则将请求传递给端口 3000 上的 node.js) 即:

这是我的/etc/nginx/sites-available/mydomain-http 配置文件。我知道我将不得不重写位置/部分,但我不知道我应该在那里放什么。

非常感谢

## Access over HTTP (but not HTTPS)
server {
  listen        80;
  listen        [::]:80 default ipv6only=on;
  access_log    /var/log/nginx/access.log;
  location / {
    root        /var/mydomain/public;
    index       index.html;
    error_page  404 = @backend;
  }
  location @backend {
    proxy_pass          http://127.0.0.1:3000;
    proxy_set_header    X-Client-IP  $remote_addr;
  }
}

【问题讨论】:

    标签: node.js nginx


    【解决方案1】:

    我自己回答了这个问题,因为我在很多“哦,我的............我不敢相信这不起作用”之后找到了解决方案。在我的案例中缺少的是

    error_page 403 = @backend;
    

    在主服务器块中,作为对 / 的请求没有返回 http 404(未找到文件),而是返回 http 403(无法访问)。

    问题已作为问题 nr 提交回项目。 5https://github.com/rsms/ec2-webapp/issues#issue/5

    【讨论】:

      猜你喜欢
      • 2020-05-18
      • 2020-03-15
      • 1970-01-01
      • 2016-04-05
      • 1970-01-01
      • 2011-11-06
      • 2016-05-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多