IMPORTANT NOTES:
- The following errors were reported by the server:
Domain: blog.hatandslash.com
Type: unauthorized
Detail: Invalid response from
http://blog.hatandslash.com/.well-known/acme-challenge/N0DCgm6dmkv5Wv6KSoBUuFkf0zqOTD76pOR5INinHBY:
"<html>
<head><title>404 Not Found</title></head>
<body bgcolor="white">
<center><h1>404 Not Found</h1></center>
<hr><center>"
Domain: www.blog.hatandslash.com
Type: unauthorized
Detail: Invalid response from
http://www.blog.hatandslash.com/.well-known/acme-challenge/GxhMHQv903Ct6UJhIuA7hGMUzeRySxUs4_o5LlYjUlg:
"<html>
<head><title>404 Not Found</title></head>
<body bgcolor="white">
<center><h1>404 Not Found</h1></center>
<hr><center>"
To fix these errors, please make sure that your domain name was
entered correctly and the DNS A record(s) for that domain
contain(s) the right IP address.'
My operating system is (include version): Ubuntu 16.04
My web server is (include version): Nginx 1.10
My hosting provider, if applicable, is: Digitalocean
I can login to a root shell on my machine (yes or no, or I don’t know): Yes
I’m using a control panel to manage my site (no, or provide the name and version of the control panel): No
Is the webroot correct? For example, if you place a test file in it, like /var/www/ghost/testfile, can you access it through http://www.blog.hatandslash.com/testfile?
By the way, for renewal, it should suffice to run just certbot renew
@Osiris t returns a Security Connection error, so I’m not able to known if I’m able to reach it. Actually my other webpage was able to renew it’s certificate, but not this one.
If I run the sudo certbot renew:
Attempting to renew cert from /etc/letsencrypt/renewal/blog.hatandslash.com.conf produced an unexpected error: Failed authorization procedure. www.blog.hatandslash.com (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://www.blog.hatandslash.com/.well-known/acme-challenge/wLUno-Mj9nz7UlQ1MH-CAceCdQdujIOP95UE9Kx-xoc: "<html>
`404 Not Found
404 Not Found
", blog.hatandslash.com (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://blog.hatandslash.com/.well-known/acme-challenge/dPosXCFqYO4js0eQmwErZcsc8TLfaSSVqxzRj_5pIHA: "
404 Not Found
The x-powered-by: Express makes me believe every request on that host is parsed by the Express application. If you were running Apache, I would say “check for ReWrite rules in a .htaccess file”, but as you’re running nginx, I don’t have a clue how that is organised.
To make things short: you should search for a method to by-pass the "send everything through Express" rule somewhere for requests for /.well-known/acme-challenge/.