为什么我的Google App Engine应用程序使用旧版本的OpenSSL?

时间:2019-11-10 08:20:21

标签: google-app-engine flask openssl

我有

libraries:
- name: ssl
  version: latest

在我的app.yaml文件中

我打印出

print(ssl.OPENSSL_VERSION)

在我的main.py文件中,它是一个烧瓶应用程序。当我使用python运行main.py时,程序会打印出

'OpenSSL 1.1.0h  27 Mar 2018'

但是当我使用dev_appserver.py运行应用程序时,它会打印出

OpenSSL 0.9.8zh 14 Jan 2016

为什么使用旧版本的open ssl?我认为这导致了我尝试使用Twilio发送消息时遇到的错误

TwilioRestException: HTTP 426 error: Unable to create record: Upgrade Required

1 个答案:

答案 0 :(得分:0)

我不确定,但是我认为gcloud工具不会在您的计算机上安装任何版本的OpenSSL,而是使用现有Python安装中已经存在的OpenSSL版本。

与dev_appserver.py一起使用的OpenSSL版本与生产中使用的版本不同。

main.py和dev_appserver.py之间的差异可能是由于不同的路径配置引起的。这两个版本的OpenSSL位于您计算机上的某个位置,并且路径配置相对于另一个而言。

最好的检查方法是在生产环境中记录OpenSSL版本。