在nodejs v12版本中发送http请求时遇到如下错误:
Error: Error: write EPROTO 18548:error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol:c:\ws\deps\openssl\openssl\ssl\statem\statem_lib.c:1922:
–tls-v1.0 flag doesn’t work on Node v12 经查询是nodejs 12默认不支持tls v1.0版本的协议,可以通过添加 --tls-min-v1.0 参数支持1.0的tls。 但由于开发过程需要用到supervisor模块,恰巧supervisor没有支持这个参数。
想请问各位,能否在代码内使http支持v1.0的tls协议,或者有无支持 --tls-min-v1.0 参数的热部署模块。
如果必须使用,就使用 nginx 或者 caddy 反向代理吧。 tls 1.0 已经不够安全了。
记得 supervisor 之类的 可传参
@yuu2lee4 这个模块好几年没更新了,没有支持这个参数
@zuohuadong 请问有没有更简便的方案呢?
@gxsandzxl 反向代理就是最简单的~ 不建议用 tls 1.0 不安全。,
https://nodejs.org/dist/latest-v12.x/docs/api/cli.html#cli_environment_variables 通过环境变量可以传参给 node。但还是强烈建议用 nginx
require(‘tls’).DEFAULT_MIN_VERSION = ‘TLSv1’;