Let’s Encrypt HTTPS更新证书问题
Let’s Encrypt是一个免费的证书机构,目前有效期限是90天,90天需要更新,今天更新的时候遇到一个问题。
执行更新命令:
$ certbot renew --dry-run
提示报错:Attempting to renew cert from /etc/letsencrypt/renewal/api.coupon.ychpos.com.conf produced an unexpected error: 'ascii' codec can't encode characters in position 269-276: ordinal not in range(128). Skipping.
从这里可以看出报错是ascii编码问题。
进入: /var/log/letsencrypt/ 日志目录,找到当前时间的目录,我们查看最后50行。
$ tail -50 letsencrypt.log
可以看到,执行certbot renew命令的时候,会调用该文件,我们在main.py中加入一段代码
import sys reload(sys) sys.setdefaultencoding('utf8')
再次运行,问题解决。