Description
Microsoft has introduced a new way to deploy your WebApps to Azure called Run-From-Zip that will be out of preview at the end of Q3. This method basically allows you to mount a zip file to the wwwroot folder of your app at startup. This comes with some great benefits but also a big downside: the wwwroot folder becomes read-only.
The Let's Encrypt site extension relies on writing the to the wwwroot folder (or whatever folder is specified in letsencrypt:WebRootPath
) for serving the answer of the ACME challenge.
I've tried using the extension with Run-From-Zip deployment but the process of requesting a certificate fails. The Let's Encrypt error report tells me that the request to https://my-site.ext/.well-known/acme-challenge/{challenge}
failed because of a HTTP 404 (Not Found).
I would expect this process to fail since the wwwroot folder is frozen (well, actually I would expect the process to fail at writing the answer to the wwwroot folder but I might not completely understand the internals of the Run-From-Zip method).
My current workaround is to have the extension write the answers to a different folder (d:\home\data\letsencrypt\challenges) by setting the letsencrypt:WebRootPath
and have the application serving any requests to /.well-known/acme-challenge/{challenge}
.
A better solution would be if the extension did not rely on writing to the wwwroot folder for serving the answers but handled it internally by having a handler listening to the path /.well-known/acme-challenge/{challenge}
instead.