如何在 nginx 中使用动态 SSL 配置配置动态虚拟主机?

Posted

技术标签:

【中文标题】如何在 nginx 中使用动态 SSL 配置配置动态虚拟主机?【英文标题】:how to configure dynamic Virtual host with dynamic SSL configuration in nginx? 【发布时间】:2015-11-30 04:26:45 【问题描述】:

是否可以像动态虚拟主机一样在 nginx 中配置动态 SSL 证书路径。

ssl_certificate 和 ssl_certificate_key 不接受 nginx 中的变量。

谢谢

【问题讨论】:

【参考方案1】:

很遗憾,这是不可能的,因为 nginx 需要在启动时加载整个 SSL 服务器配置。

来源:https://t37.net/the-good-the-bad-and-the-ugly-of-virtual-hosting-with-nginx.html

【讨论】:

【参考方案2】:

自 Nginx 版本 1.15.9 起,“ssl_certificate”和“ssl_certificate_key”指令支持变量。

【讨论】:

nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_certificate【参考方案3】:

您可以使用 lua 动态加载它们。 不过,您需要弄清楚要如何映射和获取它们。

这是从数据库加载它们的示例: https://github.com/Vestorly/nginx-dynamic-ssl/blob/master/conf/nginx.conf

【讨论】:

【参考方案4】:

您可以参考共享视频来实现它。 在这里,您可以在 nginx.conf 中使用 ssl 参数传递动态变量。 https://www.youtube.com/watch?v=aeLE988jmlo

变量是 $ssl_server_name。 使用域名存储您的 SSL 证书。 前任。 example.com.cert

【讨论】:

以上是关于如何在 nginx 中使用动态 SSL 配置配置动态虚拟主机?的主要内容,如果未能解决你的问题,请参考以下文章

Nginx使用ssl模块配置HTTPS支持

Nginx配置SSL证书

nginx+tomcat 动静态资源怎么部署

请教个nginx 配置SSL的问题

如何创建ssl证书 nginx

nginx下如何配置 ssl证书?腾讯云ssl证书为例!