JAVA全系列 教程
3762个小节阅读:7092.1k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
动态设置证书只需要两个简单步骤
动态设置私钥的步骤与设直证书类似,同样使用两个函数:
示例:
xxxxxxxxxx
-- 显式加载ngx.ssl
local ssl = require("ngx.ssl")
-- 清理证书
local ok,err = ssl.clear_certs()
if not ok then
ngx.log(ngx.ERR,"failed to clear existing")
return ngx.exit(ngx.ERR)
end
-- 加载证书
local function get_pem(file)
local f = io.open(file,'r')
if not f then
return
end
local str = f:read("*a")
ngx.log(ngx.ERR,str)
f:close()
return str
end
local prefix = ngx.config.prefix()
-- 解析证书
local cret ,err = ssl.parse_pem_cert(get_pem(prefix.."/cert/server.crt"))
if not cret then
ngx.log(ngx.ERR,"FAILE parsePem_cert",err)
end
-- 设置证书
local ok,err = ssl.set_cert(cret)
if not ok then
ngx.log(ngx.ERR,err)
end
-- 解析私钥
local key , err = ssl.parse_pem_priv_key(get_pem(prefix.."/cert/server.key"))
if not key then
ngx.log(ngx.ERR,err)
end
-- 加载私钥
local ok ,err = ssl.set_priv_key(key)
if not ok then
ngx.log(ngx.ERR,err)
end
--