【发布时间】:2019-04-07 15:29:15
【问题描述】:
几天来,我一直在努力为 SBS 2011 生成 LetsEncrypt SAN SSL。一切都很好,直到 ACME CHALLENGE 验证。 我无法使用 DNS 验证,因为 DNS 在 ISP 处,任何更改都需要几天时间才能生效。所以只能使用 HTTP 验证。
IIS 卡在哪里?
当它尝试服务器无扩展的 ACME VALIDATION 文件时,IIS 返回 404 错误。 文件在那里,Acme 客户端在适当的文件夹中生成它就好了,但它没有通过 web 显示浏览器,由于 MIME 类型,只是 404 错误。使用同一文件夹中的test.html 文件进行测试时,它会正确显示,没问题。
我已经试过了:
- 为“.”添加 MIME 类型
text/plain和“.*”扩展名,但不行 - 将
StaticFile映射移到ExtensionLessUrlHandlers上方,但仍然不行 - 编辑
applicationhost.config文件并设置为允许:<section name="handlers" overrideModeDefault="Allow" /> - 重新启动 IIS 和整个服务器,仍然无济于事
- 使用了不同的 LE 客户端,但它们都使用 IIS 并卡在同一点
- 此处的解决方案不起作用:IIS: How to serve a file without extension?
当我尝试本地化时,我总是在浏览器中收到这个 404 错误:
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
Module IIS Web Core
Notification MapRequestHandler
Handler StaticFile
Error Code 0x80070002
还有什么想法吗?
【问题讨论】:
-
不幸的是,我也检查了这个解决方案,但它不起作用。还是404错误。一定是别的东西……
-
404 本身就是一个大家族,所以先检查子状态码,support.microsoft.com/en-ca/help/943891/… 或者你需要使用失败的请求跟踪来检查你到底击中了什么。
-
如前所述是
404.0 Not Found。失败的请求跟踪没有运气,因为没有记录任何内容......或者我做错了。这里的 IIS 根本不想提供无扩展名的文件。 -
如果您仔细阅读 KB943891,404.0 与“不想提供无扩展名的文件”完全不同。您必须在站点级别启用失败的请求跟踪并添加一个规则来跟踪 404。否则,没有人可以帮助判断真正的原因是什么。如果超出您的能力范围,请通过 support.microsoft.com 打开支持案例,让 Microsoft 支持团队向您展示如何操作。
标签: ssl iis lets-encrypt