我刚刚开始在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
然后凯蒂进入失败的状态,我的网站将不会出现。我尝试了很多东西。我已手动将CLOUFLARE_EMAIL
和CLOUDFLARE_API_KEY
放入我的environment
文件中。我已使用env
和export
将凭据添加到路径变量中。当我运行echo $path
时,它们出现在我的路径中(也许我把它们放错了?)。当我运行echo $CLOUDFLARE_EMAIL
时,它会将其打印到命令行,如myemail@example.com
和echo $CLOUDFLARE_API_KEY
相同。
我查看了凯迪的文档和其他人的问题,但没有人得到答案。我不确定为什么我会一直收到这个错误,我觉得我已经做好了一切。提前感谢您提供的任何帮助/见解。
这是我的CaddyFile:
www.example.com {
root /var/www
gzip
log /var/www/access.log
errors /var/www/errors.log
tls {
dns cloudflare
}
}
答案 0 :(得分:1)
我修改了这个问题,方法是在/etc/systemd/system/caddy.service
下编辑caddy.service文件,在现有Environment=CLOUDFLARE_API_KEY=xxxxx
下面添加Environment=CLOUDFLARE_EMAIL=xxxxx
和Environment=CADDYPATH=xxxxx
,然后执行sudo systemctl daemon-reload
sudo systemctl restart caddy
。运行sudo systemctl status caddy.service
显示caddy正在运行并成功获得ssl证书,使我的网站成为https。
答案 1 :(得分:0)
您无需编辑任何内容,只需在执行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