nginx proxy_pass不起作用

时间:2019-11-10 20:59:59

标签: nginx flask

我想部署一个flask应用程序,然后按照tutorial使用nginx完成此操作。

如本教程所述,我将执行以下操作:

sudo nano /etc/nginx/sites-available/app

此文件包含:

server {
    listen 80;
    server_name server_domain_or_IP;

    location / {
        include proxy_params;
        proxy_pass http://unix:/home/pi/Desktop/python_scripts/internetdisplay/app.sock;
    }
}

已创建系统单元服务,并且该服务成功运行。这在“ internetdisplay”目录中创建了app.sock文件。 Systemctl状态应用服务结果:

● app.service - Gunicorn instance to serve myproject
   Loaded: loaded (/etc/systemd/system/app.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2019-11-10 21:16:49 CET; 16h ago
 Main PID: 438 (gunicorn)
    Tasks: 4 (limit: 2200)
   Memory: 46.4M
   CGroup: /system.slice/app.service
           ├─438 /usr/bin/python2 /usr/bin/gunicorn --workers 3 --bind unix:app.sock -m 007 wsgi:app
           ├─679 /usr/bin/python2 /usr/bin/gunicorn --workers 3 --bind unix:app.sock -m 007 wsgi:app
           ├─681 /usr/bin/python2 /usr/bin/gunicorn --workers 3 --bind unix:app.sock -m 007 wsgi:app
           └─682 /usr/bin/python2 /usr/bin/gunicorn --workers 3 --bind unix:app.sock -m 007 wsgi:app

Nov 10 21:16:49 raspberrypi systemd[1]: Started Gunicorn instance to serve myproject.
Nov 10 21:16:57 raspberrypi gunicorn[438]: [2019-11-10 21:16:57 +0000] [438] [INFO] Starting gunicorn 19.9.0
Nov 10 21:16:57 raspberrypi gunicorn[438]: [2019-11-10 21:16:57 +0000] [438] [INFO] Listening at: unix:app.sock (438)
Nov 10 21:16:57 raspberrypi gunicorn[438]: [2019-11-10 21:16:57 +0000] [438] [INFO] Using worker: sync
Nov 10 21:16:57 raspberrypi gunicorn[438]: [2019-11-10 21:16:57 +0000] [679] [INFO] Booting worker with pid: 679
Nov 10 21:16:57 raspberrypi gunicorn[438]: [2019-11-10 21:16:57 +0000] [681] [INFO] Booting worker with pid: 681
Nov 10 21:16:57 raspberrypi gunicorn[438]: [2019-11-10 21:16:57 +0000] [682] [INFO] Booting worker with pid: 682

然后我链接到启用站点的并重新启动nginx:

    sudo ln -s /etc/nginx/sites-available/app /etc/nginx/sites-enabled
    sudo systemctl restart nginx

但是浏览到http://localhost会导致“无法访问此网站”错误

1 个答案:

答案 0 :(得分:0)

听起来您的位置区设置不正确,无法找到您的资源。

我认为这不是您的unix套接字的位置:

/home/tasnuva/work/deployment/src/app.sock

检查以下内容:

  1. 系统单元文件正在预期位置创建套接字
  2. 守护程序确实正在运行并且套接字文件存在
  3. 您的nginx配置指向正确的套接字文件。

如果这些都不能告诉您任何信息,请使用适当的错误日志条目更新您的问题。