Getting a 404 Error:
Using Windows 2022 Server with Apache Tomcat
Log file error:
2024-04-19 18:41:55.380 +00:00 [INF] Checking URL is accessible: http://techlab-kodak.eastus.cloudapp.azure.com/.well-known/acme-challenge/rQYEaT42e_coAoWQ3FiKHfm-Tkxk9TZfwiV7NhGhL9M [proxyAPI: False, timeout: 5000ms]
2024-04-19 18:41:55.386 +00:00 [WRN] (local check) URL is not accessible. Check failed. HTTP NotFound
Hi,
If you use Apache then the apps built in http challenge server (which uses http.sys) can’t reserve port 80 in order to serve http challenges and instead you have to serve the http challenge via your web server filesystem. You can configure the website path on the Authorization tab, but it ‘s’ upt o yo to configure Apache to server the challenge response file properly (it’s an extension-less text file and it will be served from the /.well-known/acme-challenge/ path). This can be difficult when using application servers as they will often intercept request and remap them to the app routes instead of the filesystem.
If you can I would suggest using IIS as your port 80/443 web server and reverse proxy from IIS back to your tomcat app running on a higher port. That way traffic will go via IIS and you can use tools such as our app to configure the cert bindings specifically for IIS instead of for Apache/Tomcat.
Not also that with most certificate authorities (e.g. the default being Let’s Encrypt) there is a limit to how many certs can be issued per primary domain, in this case azure.com
.
I would suggest using a domain you control instead of using azure.com
and I would also suggest that DNS validation (against a domain you control) would be easier than HTTP validation in this case if your domain DNS is hosted on a supported DNS provider with an API: DNS Validation (dns-01) | Certify The Web Docs