【问题标题】:IIS 7.5 problems LetsEncrypt HTTP validation due to not serving extension-less filesIIS 7.5 问题 LetsEncrypt HTTP 验证由于不提供无扩展名文件
【发布时间】: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


【解决方案1】:

对不起,伙计们!这是我的错,在向您传递细节时不够小心。 添加“.”的解决方案因为 MIME 类型“text/plain”是我的 OP 案例中唯一需要的东西。

我的问题是“自动发现”子域,我仍然不知道它是从哪里提供的,但绝对不是来自默认网站下的“自动发现”应用程序。截至目前,当我浏览“autodiscover.domain.com ...”链接时,我仍然会获得缓存的 test.html 内容,但我已经删除了我在那里种植的所有 test.html 文件。 好的,但是,这不是这里的主题。

顺便说一句...LE 测试在我的防火墙上的国家/地区阻止规则上失败了。哦,我的...

感谢您的参与。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多