【发布时间】:2017-05-18 18:13:59
【问题描述】:
我刚刚在我的 MacOS Sierra 中将我的 Django 1.10 (Python 3.5) 应用程序升级到了 Django 1.11 (Python 3.6)。
大多数事情仍然有效,但我意识到 SSL 连接不再像以前那样工作了。我注意到我的 AWS S3 服务和python manage.py collectstatic 存在一些问题。这些功能未与 AWS 连接/进行身份验证。
这是我第一次处理我的 Django 应用程序的更新,所以我不太确定处理这些问题的正确方法是什么。
我做了一些研究,发现这是来自使用 python 3.6 的 Mac 的预期问题。
有谁知道为此寻找解决方案是否值得麻烦,或者切换回 python 3.5 是否更好?
根据 Python 3.6 ReadMe.rft:
证书验证和 OpenSSL
新功能这个 Python 3.6 的变体现在包括它自己的 OpenSSL 1.0.2 私有副本。与以前的版本不同,不再使用 Apple 提供的已弃用 OpenSSL 库。这也意味着由 Keychain Access 应用程序和安全命令行实用程序管理的系统和用户钥匙串中的信任证书不再被 Python ssl 模块用作默认值。对于 3.6.0,/Applications/Python 3.6 中包含一个示例命令脚本,用于安装来自第三方 certifi 包 (https://pypi.python.org/pypi/certifi) 的默认根证书的精选捆绑包。如果您选择使用 certifi,则应考虑订阅项目的电子邮件更新服务,以便在更新证书包时收到通知。 Python 3.6 安装程序附带的捆绑 pip 具有自己的默认证书存储,用于验证下载连接。
【问题讨论】:
标签: amazon-web-services ssl upgrade python-3.6 django-1.11