I have this issue only auto renewing cron job. Manually it works fine.
/www/server/panel/pyenv/bin/python /www/server/panel/class/acme_v2.py --renew=1
I run command above in terminal and got the following output
ACME_NEED_RENEW
ACME_RENEWING
|-Creating order..
|-Getting verification information..
|-Verify the dir:/www/wwwroot/example.com/.well-known/acme-challenge
|-Verification type: http-01
|-Verification type: http-01
|-Verifying domain name..
|-1 Query verification results..
|-Verification failed
|-Verification failed, domain name resolution error or verification URL cannot be accessed!
I'm using a Laravel application, so the site .well-known
must be in folder /www/wwwroot/example.com/public
directory, not in in /www/wwwroot/example.com
To solve this issue I had created a symbolic link where /www/wwwroot/example.com/.well-known
points to /www/wwwroot/example.com/public/.well-known
root@server:/www/wwwroot/example.com# ls -lah
(...)
lrwxrwxrwx 1 root root 20 May 28 21:29 .well-known -> ./public/.well-known
(...)
After create the symbolic link I retried run the script to renew and I got the following output
root@fireflare:~# /www/server/panel/pyenv/bin/python /www/server/panel/class/acme_v2.py --renew=1
ACME_NEED_RENEW
ACME_RENEWING
|-Creating order..
|-Getting verification information..
|-Verify the dir:/www/wwwroot/example.com/.well-known/acme-challenge
|-Verification type: http-01
|-Verification type: http-01
|-Verifying domain name..
|-1 Query verification results..
|-Verification succeeded!
|-1 Query verification results..
|-Verification succeeded!
|-Sending CSR..
|-Downloading certificate..
Traceback (most recent call last):
File "/www/server/panel/class/acme_v2.py", line 750, in save_cert
self.sub_all_cert(key_file, pem_file)
File "/www/server/panel/class/acme_v2.py", line 772, in sub_all_cert
if to_cert_init['issuer'] != cert_init['issuer'] and to_cert_init['issuer'].find("Let's Encrypt") == -1:
AttributeError: 'NoneType' object has no attribute 'find'
|-Renewed successfully!
A error happend.