问题描述
我有一个部署到Heroku和Postgres的Django应用程序,我试图添加pgbouncer来扩展应用程序的大小,但是我遇到了这个错误:
django.db.utils.OperationalError: server does not support SSL,but SSL was required
许多其他问题都说,问题是django-heroku软件包中的SSL。 所以我试图接近 第一: 在设置文件的末尾添加以下内容:
del DATABASES['default']['OPTIONS']['sslmode']
错误仍然存在,因此我使用了django-heroku设置功能并将其修改为直接在其中禁用SSL
def custom_settings(config,*,db_colors=False,databases=True,test_runner=True,staticfiles=True,allowed_hosts=True,logging=True,secret_key=True):
# Database configuration.
# Todo: support other database (e.g. teal,Amber,etc,automatically.)
# Same code as the package
# CHANGING SSL TO FALSE
config['DATABASES'][db_color] = dj_database_url.parse(url,conn_max_age=MAX_CONN_AGE,ssl_require=False)
if 'DATABASE_URL' in os.environ:
logger.info('Adding $DATABASE_URL to default DATABASE Django setting.')
# Configure Django for DATABASE_URL environment variable.
config['DATABASES']['default'] = dj_database_url.config(conn_max_age=MAX_CONN_AGE,ssl_require=False)
logger.info('Adding $DATABASE_URL to TEST default DATABASE Django setting.')
并调用它:
django_heroku_override.custom_settings(config=locals(),staticfiles=False,logging=False)
但是那还行不通,我仍然遇到原始错误
web: bin/start-pgbouncer daphne rivendell.asgi:application --port $PORT --bind 0.0.0.0 -v2
worker: python manage.py runworker channel_layer -v2
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)