部署金字塔应用程序:Nginx+Pserve

部署金字塔应用程序:Nginx+Pserve,nginx,pyramid,digital-ocean,Nginx,Pyramid,Digital Ocean,我一直遵循金字塔食谱,尝试在DigitalOcean上部署我的应用程序。这似乎是可行的,我得到了进入守护程序模式的消息,就像我在本地机器上运行时一样 我还添加了我的域名,并设置了指向DigitalOcean的命名服务器 但当我尝试在访问我的站点时,它不会加载。我完全迷失在这一点上-我做错了什么 以下是我的文件的结构: home/ |----env/ # virtualenv |----MyApp/ | |----production.ini

我一直遵循金字塔食谱,尝试在DigitalOcean上部署我的应用程序。这似乎是可行的,我得到了进入守护程序模式的消息,就像我在本地机器上运行时一样

我还添加了我的域名,并设置了指向DigitalOcean的命名服务器

但当我尝试在访问我的站点时,它不会加载。我完全迷失在这一点上-我做错了什么

以下是我的文件的结构:

home/
  |----env/ # virtualenv
  |----MyApp/
        |
        |----production.ini
        |----requirements.txt
        |----myapp.sql
        |----myapp.psql
        |----MyProject
              |
              |----scripts/
              |----static/
              |----templates/
              |----__init__.py
              |----views.py
              |----models.py
这是我的app.conf:

upstream myapp-site {
    server 127.0.0.1:5000;
    server 127.0.0.1:5001;
}

server {

    server_name  wisderm.com;

    access_log  /home/MyApp/access.log;

    location / {
        proxy_set_header        Host $http_host;
        proxy_set_header        X-Real-IP $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header        X-Forwarded-Proto $scheme;

        client_max_body_size    10m;
        client_body_buffer_size 128k;
        proxy_connect_timeout   60s;
        proxy_send_timeout      90s;
        proxy_read_timeout      90s;
        proxy_buffering         off;
        proxy_temp_file_write_size 64k;
        proxy_pass http://myapp-site;
        proxy_redirect          off;
    }

    location /static {
      root                    /home/MyApp;
      expires                 30d;
      add_header              Cache-Control public;
      access_log              off;
    }
}

Nginx日志/var/log/Nginx/…中是否有任何内容。。。?您的应用程序日志/home/myapp/access.log中是否有任何内容?为什么在一个地方是/home/myapp而在另一个地方是/home/myapp?您是否知道location/static中似乎缺少closing}{section?另外,我认为如果你的配置工作正常,它将在/static/公开你网站的所有源代码。我认为指令应该是root/home/MyApp/MyProject/static。我使用tail/var/log/nginx/error.log检查了错误日志,其中有很多错误:2014/04/22 01:24:18[错误]255680:*11/etc/nginx/html/index.html未找到2:没有此类文件或目录,客户端:220.255.2.78,服务器:wisderm.com,请求:GET/HTTP/1.1,上游http://127.0.0.1:5001/,主持人:wisderm.com 2014/04/22 02:12:13[错误]257920:*1连接失败111:连接到上游时连接被拒绝,客户端:220.255.2.78,服务器:wisderm.com,请求:GET/HTTP/1.1,上游http://127.0.0.1:5001/,host:wisderm.com MyApp vs MyApp是一个输入错误,我已经更正了。我没有发现任何遗漏},我的缩进稍微有点偏离,所以我也纠正了。至于根目录,在金字塔烹饪书链接中,它说根目录不指向静态目录很奇怪,但它可以工作,因为Nginx会将实际URL附加到指定的路径。但它可能应该是/home/MyApp/MyProject?你重新启动了Nginx a吗添加app.conf之后?是否在/etc/nginx/sites enabled/?中?您能否确认您的主nginx配置有一个指令,将所有内容包含在配置所在的目录中?