我们如何在 Gramex 的 FormHandler 中将 SSL 参数传递给 MySQL?
P粉558478150
P粉558478150 2024-04-02 16:34:01
0
1
325

我使用此 gramex.yaml 配置连接到 OTP 的 MySQL 数据库:

otp:
    url: 'mysql+pymysql://$USER:$PASS@$MYSQL_SERVER/$DB'
    table: $TABLE

当 Gramex 启动时,它会报告异常:

InternalError: (pymysql.err.InternalError) (3159, 'Connections using insecure transport are prohibited while --require_secure_transport=ON.')

这个答案建议传递一个虚拟的 ssl: 字典。

如何将其传递给 Gramex 的 FormHandler?

P粉558478150
P粉558478150

全部回复(1)
P粉592085423

有两种可能性。如果您没有用于连接数据库的 SSL 证书,请使用:

otp:
  url: 'mysql+pymysql://$USER:$PASS@$MYSQL_SERVER/$DB'
  table: $TABLE
  connect_args:
    ssl:
      fake_flag_to_enable_tls: true

如果您有 PEM 格式的 SSL CA 证书,请使用:

otp:
  url: 'mysql+pymysql://$USER:$PASS@$MYSQL_SERVER/$DB'
  table: $TABLE
  connect_args:
    ssl_ca: /path/to/ca-certificate.pem

您可以将任何其他参数传递给 pymysql 连接对象 .

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!