Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 配置Nginx以使用uwsgi自动运行flask_Python_Nginx_Uwsgi - Fatal编程技术网

Python 配置Nginx以使用uwsgi自动运行flask

Python 配置Nginx以使用uwsgi自动运行flask,python,nginx,uwsgi,Python,Nginx,Uwsgi,我正在开发python程序,我有一个运行它们的flask文件。现在我正在尝试从Nginx自动运行flask,并将它们与uWSGI链接。它不工作,而且卡住了 我跟随了这个页面。这里是链接: 我已经执行了所有必要的步骤,并得到了502个坏网关错误。 执行时 uswgi --ini /var/www/tg/tg_uswgi.ini 我得到以下信息 [uSWGI] getting INI configuration from /var/www/tg/tg_uwsgi.ini 在这之后,我没有得到任

我正在开发python程序,我有一个运行它们的flask文件。现在我正在尝试从Nginx自动运行flask,并将它们与uWSGI链接。它不工作,而且卡住了

我跟随了这个页面。这里是链接: 我已经执行了所有必要的步骤,并得到了502个坏网关错误。 执行时

uswgi  --ini /var/www/tg/tg_uswgi.ini
我得到以下信息

[uSWGI] getting INI configuration from /var/www/tg/tg_uwsgi.ini
在这之后,我没有得到任何东西。当我运行我的服务器时,它仍然给我502坏网关

这是我的 tg_nginx.conf

server {
    listen      80;
    server_name localhost;
    charset     utf-8;
    client_max_body_size 75M;

    location / { try_files $uri @yourapplication; }
    location @yourapplication {
        include uwsgi_params;
        uwsgi_pass unix:/var/www/tg/tg_uwsgi.sock;
    }    
}
这是我的tg_uwsgi.ini

[uwsgi]
#application's base folder
base = /var/www/tg

#python module to import
app = fileforflk     //fileforflk is my flask file which calls other python 
                    //files
module = %(app)

home = %(base)/venv
pythonpath = %(base)

#socket file's location
socket = /var/www/demoapp/%n.sock

#permissions for the socket file
chmod-socket    = 666

#the variable that holds a flask application inside the module imported at line #6
callable = app

#location of log files
logto = /var/log/uwsgi/%n.log
这是我的烧瓶档案

from flask import Flask
import browser          //python file the flask is calling
app = Flask(_name_)
@app.route('/test',methods= ['GET'])
def result():
   return ("success")
if _name_ == '_main_':
   app.run(host = '0.0.0.0',port=5000)

在获得INI配置后,终端没有显示任何内容,服务器仍然返回坏网关。请帮我解决这个问题。

您应该定义:

socket = /var/www/demoapp/%n.sock
以及:

uwsgi_pass unix:/var/www/tg/tg_uwsgi.sock;
应该是匹配的。例如,定义:

socket = /var/www/tg/%n.sock
以及:


我已将其从demoapp更改为tg。仍然卡在终端上。它说从/var/www/tg/tg_-uwsgi.INI获取INI配置,但没有结果。是否有
*。
/var/www/tg/
中的sock
文件?我在/var/www/tg/nginx错误日志中有一个tg_-uwsgi.sock文件,我正在获取
连接到Unix:/var/www/tg/tg\u-uwsgi.sock失败(13:权限被拒绝)当连接到上游时,
so
chown
nginx:nginx
www-data:www-data
对于
/var/www/tg/tg\u-uwsgi.sock
,只需更新答案
如果uuuuuuuuuu-name==''uuuu-main':
注意双下划线。
sudo chown -R www-data:www-data /var/www/tg/
sudo chown -R www-data:www-data /var/log/uwsgi/