【发布时间】:2021-03-30 19:22:21
【问题描述】:
我有一个在 PythonAnywhere 上运行的 Flask 应用程序和一个来自 DigitalOcean 的 PostgreSQL 托管数据库。我正在使用 Flask-SQLAlchemy 连接到数据库。
连接到远程数据库时,我的应用程序在本地运行良好。但是,当我在 PythonAnywhere 上运行该应用程序时,它会失败。我怀疑是 uWSGI 的多个工作人员导致了问题,正如 Stack Overflow 帖子所述:uWSGI, Flask, sqlalchemy, and postgres: SSL error: decryption failed or bad record mac
这是我收到的错误消息
sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) SSL error: decryption failed or bad record mac
错误是由一个简单的 Flask-SQLAlchemy 方法触发的:
user = User.query.get(id)
另一个 Stack Overflow 帖子提供了一个解决方案,我可以在其中更改 uWSGI 的配置。但是在 PythonAnywhere 中,我无法修改 uWSGI 的配置。此外,在初始化应用程序后处理数据库引擎并不能解决问题。是否有替代解决方案?
编辑 1:我有一个付费帐户。
【问题讨论】:
-
您有免费帐户吗?如果是这样,您将无法连接 PythonAnywhere 上的外部 postgres 服务器。
-
@caseneuve 我有一个付费帐户。
标签: postgresql flask flask-sqlalchemy uwsgi pythonanywhere