Caddy (Linux) CloudFlare 凭据丢失
Caddy (Linux) CloudFlare Credentials Missing
我最近刚开始在 100tb.com 上设置自己的 Ubuntu v16 服务器。我正在使用 Caddy 为我的网页提供服务,并为我的网站提供 https
的 SSL 证书。我已经安装了 Cloudflare 版本的 Caddy,并根据 this article 配置了所有内容。我有一个朋友指导我设置了 Cloudflare,所以我确定它的配置也正确。
我在重启 Caddy 时遇到的错误是:
caddy[14965]: Activating privacy features...2018/01/17 17:10:18 CloudFlare credentials missing
然后Caddy进入失败状态,我的网站就不会出现了。我试过很多东西。我手动将 CLOUFLARE_EMAIL
和 CLOUDFLARE_API_KEY
放入我的 environment
文件中。我同时使用 env
和 export
将凭据添加到我的路径变量中。当我 运行 echo $path
它们出现在我的路径中(也许我把它们放错了?)。当我 运行 echo $CLOUDFLARE_EMAIL
时,它会像 myemail@example.com
一样将其打印到命令行,对于 echo $CLOUDFLARE_API_KEY
.
也是如此
我查看了 Caddy 的文档和其他人的问题,但 none 找到了答案。我不确定为什么我一直收到这个错误,我觉得我已经正确地完成了所有事情。提前感谢您的任何 help/insights。
这是我的 CaddyFile:
www.example.com {
root /var/www
gzip
log /var/www/access.log
errors /var/www/errors.log
tls {
dns cloudflare
}
}
我通过编辑 /etc/systemd/system/caddy.service
下的 caddy.service 文件来解决这个问题,在已经存在的 Environment=CADDYPATH=xxxxx
下面添加 Environment=CLOUDFLARE_API_KEY=xxxxx
和 Environment=CLOUDFLARE_EMAIL=xxxxx
并做了 sudo systemctl daemon-reload
后跟 sudo systemctl restart caddy
。 运行 sudo systemctl status caddy.service
显示 caddy 是 运行 并成功获得了 ssl 证书,使我的网站成为 https.
你不需要编辑任何东西,只需要在执行 caddy 服务之前设置你的环境变量。
export CLOUDFLARE_EMAIL="YOUR_EMAIL_ON_CLOUDFLARE"
export CLOUDFLARE_API_KEY="YOUR_API_KEY_ON_CLOUDFLARE"
检查是否保存正确
echo $CLOUDFLARE_EMAIL
echo $CLOUDFLARE_API_KEY
然后,在同一个终端运行
sudo CLOUDFLARE_EMAIL=$CLOUDFLARE_EMAIL CLOUDFLARE_API_KEY=$CLOUDFLARE_API_KEY /usr/local/bin/caddy --agree
等待几秒钟以完成挑战,您应该会看到如下输出:
Activating privacy features... done.
https://example.com
http://example.com
这个回复给了我一个提示。 https://caddy.community/t/caddy-and-cloudflare-authentication/3080/4
我最近刚开始在 100tb.com 上设置自己的 Ubuntu v16 服务器。我正在使用 Caddy 为我的网页提供服务,并为我的网站提供 https
的 SSL 证书。我已经安装了 Cloudflare 版本的 Caddy,并根据 this article 配置了所有内容。我有一个朋友指导我设置了 Cloudflare,所以我确定它的配置也正确。
我在重启 Caddy 时遇到的错误是:
caddy[14965]: Activating privacy features...2018/01/17 17:10:18 CloudFlare credentials missing
然后Caddy进入失败状态,我的网站就不会出现了。我试过很多东西。我手动将 CLOUFLARE_EMAIL
和 CLOUDFLARE_API_KEY
放入我的 environment
文件中。我同时使用 env
和 export
将凭据添加到我的路径变量中。当我 运行 echo $path
它们出现在我的路径中(也许我把它们放错了?)。当我 运行 echo $CLOUDFLARE_EMAIL
时,它会像 myemail@example.com
一样将其打印到命令行,对于 echo $CLOUDFLARE_API_KEY
.
我查看了 Caddy 的文档和其他人的问题,但 none 找到了答案。我不确定为什么我一直收到这个错误,我觉得我已经正确地完成了所有事情。提前感谢您的任何 help/insights。
这是我的 CaddyFile:
www.example.com {
root /var/www
gzip
log /var/www/access.log
errors /var/www/errors.log
tls {
dns cloudflare
}
}
我通过编辑 /etc/systemd/system/caddy.service
下的 caddy.service 文件来解决这个问题,在已经存在的 Environment=CADDYPATH=xxxxx
下面添加 Environment=CLOUDFLARE_API_KEY=xxxxx
和 Environment=CLOUDFLARE_EMAIL=xxxxx
并做了 sudo systemctl daemon-reload
后跟 sudo systemctl restart caddy
。 运行 sudo systemctl status caddy.service
显示 caddy 是 运行 并成功获得了 ssl 证书,使我的网站成为 https.
你不需要编辑任何东西,只需要在执行 caddy 服务之前设置你的环境变量。
export CLOUDFLARE_EMAIL="YOUR_EMAIL_ON_CLOUDFLARE"
export CLOUDFLARE_API_KEY="YOUR_API_KEY_ON_CLOUDFLARE"
检查是否保存正确
echo $CLOUDFLARE_EMAIL
echo $CLOUDFLARE_API_KEY
然后,在同一个终端运行
sudo CLOUDFLARE_EMAIL=$CLOUDFLARE_EMAIL CLOUDFLARE_API_KEY=$CLOUDFLARE_API_KEY /usr/local/bin/caddy --agree
等待几秒钟以完成挑战,您应该会看到如下输出:
Activating privacy features... done.
https://example.com
http://example.com
这个回复给了我一个提示。 https://caddy.community/t/caddy-and-cloudflare-authentication/3080/4