我使用的是debain jessie,certbot版本0.9.3-1~bpo8 + 2。自从过去两天起,我在为我的网站续订证书时遇到了此错误。
Could not bind TCP port 443 because it is already in use by another process on
this system (such as a web server). Please stop the program in question and then
try again.
-------------------------------------------------------------------------------
Attempting to renew cert from /etc/letsencrypt/renewal/www.testsite.com.conf produced an unexpected error: object of type 'NoneType' has no len(). Skipping.
我该怎么办?我对Letsencrypt并不熟悉。请问有人对此有所了解吗?
答案 0 :(得分:3)
停止您的网络服务器并再次运行。如果您使用的是nginx,请使用sudo service nginx stop
答案 1 :(得分:3)
我还没有找到一种方法来实现“零停机时间”,但是您可以使用挂钩自动停止/启动nginx,以便您可以使用cron处理续订:
certbot renew --pre-hook "service nginx stop" --post-hook "service nginx start"
答案 2 :(得分:0)
我是apache2情人,这是解决方法
certbot更新--cert-name www.snippetbucket.com --pre-hook “ service apache2 stop”-后挂接“ service apache2 start”
更简单,可以100%工作。
现在,所有域引用都在apache托管服务器上,实现自动化流程。
certbot更新-预挂机 “ service apache2 stop”-后挂接“ service apache2 start”
建议:如果自动化无法正常工作,只需根据服务器流量低的情况提前安排续订过程即可。