如何正确地进行故障排除?
看起来我可能遇到了 letsencrypt 无法续订证书的问题。
运行 .launcher logs app 时,日志提到检查 /shared/letsencrypt,但该目录不存在。我确实有 /shared/standalone/letsencrypt。
![]()
有没有可能在某个时候升级更改了目录结构,而现在有些东西没有指向正确的路径?
如何正确地进行故障排除?
看起来我可能遇到了 letsencrypt 无法续订证书的问题。
运行 .launcher logs app 时,日志提到检查 /shared/letsencrypt,但该目录不存在。我确实有 /shared/standalone/letsencrypt。
![]()
有没有可能在某个时候升级更改了目录结构,而现在有些东西没有指向正确的路径?
此模板不正确吗?
LETSENCRYPT_DIR: "/shared/letsencrypt"
DISCOURSE_FORCE_HTTPS: true
hooks:
after_ssl:
- exec:
cmd:
- if [ -z "$LETSENCRYPT_ACCOUNT_EMAIL" ]; then echo "LETSENCRYPT_ACCOUNT_EMAIL 环境变量是必需的,但未设置。"; exit 1; fi
- /bin/bash -c "if [[ ! \"$LETSENCRYPT_ACCOUNT_EMAIL\" =~ ([^@]+)@([^\\.]+) ]]; then echo \"LETSENCRYPT_ACCOUNT_EMAIL 不是一个有效的电子邮件地址\"; exit 1; fi"
- exec:
cmd:
- cd /root && git clone --branch 3.0.6 --depth 1 https://github.com/acmesh-official/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
- cd /root/acme.sh && LE_WORKING_DIR="${LETSENCRYPT_DIR}" ./acme.sh --set-default-ca --server letsencrypt
- file:
path: "/etc/nginx/letsencrypt.conf"
contents: |
user www-data;
worker_processes auto;
daemon on;
events {
worker_connections 768;
# multi_accept on;
您似乎执行了某些操作,导致证书续订失败,现在您已被速率限制。最近有人通过阻止端口 80 来执行此操作。
一种解决方法是为其他主机名请求证书,如设置 Let’s Encrypt 证书并配置重定向中所述。
我相信该路径会存在于容器内,而不是在你的主机器上。