计划任务为什么不在 vhost/cert/ 中检测?
答案:这是宝塔面板的设计缺陷
代码分析(crontab_ssl.py 第42-43行):
obj = panelSSL.panelSSL()
CertList = obj.GetCertList(get) # 从 vhost/ssl/ 读取证书
GetCertList 方法硬编码从 /www/server/panel/vhost/ssl 读取证书,而不是从 Nginx 实际使用的 vhost/cert/ 读取。
这导致的问题:
目录 用途 计划任务检测
vhost/cert/ Nginx实际使用 ❌ 不检测
vhost/ssl/ 面板SSL管理 ✅ 检测
vhost/letsencrypt/ Let's Encrypt原始存储 ❌ 不检测
两个目录的域名对比(发现不一致):
域名 vhost/cert/ vhost/ssl/ 状态
0.default ✅ ❌ 计划任务检测不到
redis1.eceye.cn ✅ ❌(只有redis1-gui.eceye.cn) 计划任务检测不到
newheroes.com ✅ ❌(只有newheroes.com.cn) 计划任务检测不到 |