大家好,
我有一台 Discourse 网站,已为其颁发了 SSL 证书。
电子邮件地址位于 app.yaml 文件中。
不过,该证书现已失效,我需要更新它。
./launcher rebuild app 命令无法解决问题。
在这种情况下,我该如何更新证书?
大家好,
我有一台 Discourse 网站,已为其颁发了 SSL 证书。
电子邮件地址位于 app.yaml 文件中。
不过,该证书现已失效,我需要更新它。
./launcher rebuild app 命令无法解决问题。
在这种情况下,我该如何更新证书?
您的服务器前面有 Cloudflare 吗?
前面没有 Cloudflare。
这是 Let’s Encrypt 证书还是其他类型的证书?如果是其他类型的证书,你需要将新证书放在旧证书所在的位置。
你的网站 URL 是什么?
这是 Let’s Encrypt 证书。我在设置整个站点时刚刚添加了 Let’s Encrypt 的邮箱。无法分享站点 URL,但我可以提供所有所需信息。Discourse 已是最新版本。
只要连接没有被代理,Let’s Encrypt 应该会自动续期。
Chrome 已锁定挂锁,表明证书有效,但证书的有效期显示为过去,打开证书时会提示其已过期。
没有使用代理。
是否有手动更新的方法?
编辑:Chrome 和 Windows 标准证书信息显示证书已过期,但 Firefox 显示其正常且日期有效。
我不知道您使用哪个客户端,但如果您运行 certbot certificates,它将显示所有证书——包括已过期和有效的。如果您仍在继续使用已过期的证书,而实际上已有有效证书,请安装有效证书。
但依我之见,这个问题应该在 community.letsencrypt.org 社区解决。
有一点需要注意:Let’s Encrypt 的设计初衷是自动续期。如果您使用 certbot manual 命令运行,则必须每 60 至 90 天手动续期。如果您使用 certonly,一旦创建证书后,您需要自行安装。
我并没有选择证书应用。这是 Discourse 的默认安装,所以我甚至不确定这是 certbot 还是 acme.sh。
亲爱的 @pbies
根据代码:
exec:
cmd:
- cd /root && git clone --branch 2.8.2 --depth 1 https://github.com/Neilpang/acme.sh.git && cd /root/acme.sh
- touch /var/spool/cron/crontabs/root
- install -d -m 0755 -g root -o root $LETSENCRYPT_DIR
- cd /root/acme.sh && LE_WORKING_DIR="${LETSENCRYPT_DIR}" ./acme.sh --install --log "${LETSENCRYPT_DIR}/acme.sh.log"
- cd /root/acme.sh && LE_WORKING_DIR="${LETSENCRYPT_DIR}" ./acme.sh --upgrade --auto-upgrade
希望这能有所帮助…… ![]()
这有助于理解 acme 脚本用于安装和更新。但我仍未找到手动更新证书的操作说明。应该会有相关的网页说明。稍后我将尝试进入容器,并基于此代码签发新证书。
@neounix
在更新证书之前,我想了解为什么在 Chrome(特别是 Windows 上的证书信息)中证书显示已无效(过期),而在 Firefox 中证书却有效且过期时间在未来。
也许不需要手动更新证书?
如果你只是在浏览器中查看证书日期,由于论坛的服务工作线程,它可能会显示旧的日期。我认为这不是一个问题(尽管我不太清楚具体是如何工作的。)
亲爱的 @pbies
你可以按照任何你想尝试的方式配置你的设置。
当我操作时,我总是按照我在帖子中描述的方式配置证书,因为这样既简单又没有问题。
无需进行“证书分析”,因为你可以轻松免费地申请一个新的证书,不会有任何问题或麻烦。
我试过了,但不确定是否成功。只是在 Chrome 中按 Ctrl+F5 强制刷新了网站,现在证书显示有效。看来是缓存问题……
感谢各位的帮助!