繁体   English   中英

504连接错误Flask Nginx uWSGI Ubuntu

[英]504 Connection Error Flask Nginx uWSGI Ubuntu

大家好,我希望能得到一些关于此事的指导。 我有一个在ubuntu服务器上设置的烧瓶应用程序。 它使用ssh创建到具有mysql数据库的Centos 7 Server的隧道。 在Ubuntu服务器上使用python运行此应用程序后,我能够完美地登录我的应用程序并从域ip查看数据库中的数据。 现在,在尝试在nginx和uWSGI上运行应用程序时,我实际上可以从我的域名进入登录页面。 但是在输入我的凭据并尝试登录时,页面加载大约一分钟,我收到504连接超时错误

我是否会收到这个,因为我的应用程序试图在处理来自我的数据时联系到另一台服务器。 我不确定,还没有任何帮助。 这是我的文件

服务器块

server {
    listen 80;
    server_name itinareport.tk www.itinareport.tk;

    location / {
        uwsgi_read_timeout 600;
        include uwsgi_params;
        uwsgi_pass unix:/home/pinchrep2/itinarep/itinarep.sock;
    }
}

ini档案

[uwsgi]
module = wsgi:app

master = true
processes = 5

socket = itinarep.sock
chmod-socket = 660
vacuum = true

die-on-term=true

wsgi.py

from main import  app


if __name__ == "__main__":
    app.run()

服务文件

[Unit]
Description=uWSGI instance to serve itinarep
After=network.target

[Service]
User=pinchrep2
Group=www-data
WorkingDirectory=/home/pinchrep2/itinarep
Environment="PATH=/home/pinchrep2/itinarep/it_venv/bin"
ExecStart=/home/pinchrep2/itinarep/it_venv/bin/uwsgi --ini itinarep.ini

[Install]
WantedBy=multi-user.target

这是我从主py文件main.py ssh的地方

sshforward = SSHTunnelForwarder(
    ("public ip", 22),
   ssh_username = 'user',
   ssh_password = 'pass',
   remote_bind_address = ('127.0.0.1', 3306)
)
sshforward.start()
local_port = sshforward.local_bind_port

app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret_key'
app.config['SQLALCHEMY_DATABASE_URI'] = f"mysql+pymysql://root@localhost:{local_port}/asteriskcdrdb"

if __name__ == "__main__":
    app.run(host='0.0.0.0')

我再一次需要这个部署。 请明确指出正确的方向配置。 我可以申请,但登录后我收到此问题。

当您的数据库连接url引用“localhost”时,它通过unix套接字真正连接。

您可以使用包含unix套接字的local_bind_address连接?unix_socket=/path/to/mysql.sockSQLALCHEMY_DATABASE_URI 到此答案中

似乎连接到远程unix套接字正在等待实现此上游问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM