Certbot续期证书后Nginx无法通过重载加载新证书,仅重启服务生效的问题求助
Certbot续期证书后Nginx无法通过重载加载新证书,仅重启服务生效的问题求助
大家好,想请教一个困扰我一阵的问题:
我们的环境是多台运行Ubuntu 20.04和22.04的Linux服务器,上面托管着客户的网站,用Certbot来生成和续期SSL证书,Web服务器用的是Nginx。
之前证书生成和续期一直很顺畅:
- 生成证书用的命令是:
certbot --webroot-path /path/to/webroot -d domain.name - 续期则是通过cron任务执行:
certbot -q --post-hook "service nginx reload" renew
这套配置去年12月之前都工作得好好的,但最近发现post-hook里的重载命令失效了——Certbot能成功申请到新证书,也正常写入了证书存储,但Nginx就是不加载新证书。
我试过了各种重载Nginx的命令,都没用:
nginx -t && nginx -s reload/etc/init.d/nginx reloadsystemctl reload nginxnginx -s reloadnginx -t -q && nginx -s reload
只有执行硬重启命令systemctl restart nginx之后,Nginx才会加载新证书。但我不想一直用重启的方式,毕竟重启会导致服务中断,影响客户体验。
想问问有没有其他管理员遇到过同样的情况?有没有什么办法能让重载命令恢复正常,避免重启带来的 downtime?
备注:内容来源于stack exchange,提问作者premar
相关产品推荐
相关产品推荐

