无法读取Google App Engine中的SSL证书路径

时间:2018-12-13 20:22:37

标签: google-app-engine ssl-certificate mysql-python webapp2

我正在使用GAE上托管的Python代码中的MySQLdb来远程连接到数据库服务器。

根文件夹结构为

??sp::`SpatialPolygonsDataFrame-class`

所以我将证书文件放在一个静态文件夹中,并将其与我的代码一起部署到GAE,然后我将通过SSL连接中的路径引用它

下面是MySQLdb.connect()中的ssl ,用 cron.py

编写
/client-ssl
   ca.pem
   client-key.pem
   ..
app.yaml
index.yaml
cron.py
..

ssl_path本地打印到

  

F:\ Projects \ project-root \ client-ssl

工作正常,可以在我的计算机文件系统中找到文件,并成功建立具有证书身份验证的SSL连接。

但是问题出在打印到

的GAE环境中
  

/ base / data / home / apps / project-id / default-service / client-ssl

/ base / data / home / apps / project-id / default-service / 是我在GAE上的项目的根目录

,但它给我一个错误,好像没有client-ssl下的文件在那里,或者GAE环境中os.path给出的路径错误,并且连接失败。

PS:

  • 我检查了GAE上已部署的代码,发现client-ssl文件夹已部署在那里。
  • 我也在一些教程中找到的app.yaml中为这些静态目录设置了处理程序,但我认为我不是通过/ css之类的任何HTTP请求来调用它们

app.yaml处理程序

ssl_path = os.path.join(os.path.split(__file__)[0], 'client-ssl')

'ssl': {
    'ca': os.path.join(ssl_path,'ca.pem'),
    'cert': os.path.join(ssl_path, 'client-cert.pem'),
    'key': os.path.join(ssl_path, 'client-key.pem'),
}

有任何解决方法吗?

0 个答案:

没有答案