错误信息:The ACME server was probably unable to reach

在使用Let’s Encrypt在IIS上安装SSL证书时,Let’s Encrypt会首先尝试对IIS站点进行有效性验证。其基本过程为:

1) 接收用户输入的主机名,如www.test.com

2) 接收用户输入的站点根目录的全路径,如c:\wwwroot

3) 尝试在站点根目录下创建.well-known目录并在该目录生成一个文件,文件内容为一串随机字符串,Let’s Encrypt官网会尝试访问此随机字符串。如果访问成功,则站点验证成功。

由于当IIS的MIME类型未对该随机文件设定处理程序时,会出现如下的错误:

The ACME server was probably unable to reach http://www.test.com/.well-known/acme-challenge/xxx(随机字符串)

这个是因为IIS未指定对没有后缀名的文件进行何种处理,所以直接访问此随机文件,会提示错误。

打开IIS的详细错误报告后,根据不同错误提示,可以有以下不同的解决方法

1) 错误1:

HTTP 错误 404.17 – Not Found

请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理。

解决方法:

1) 打开IIS管理器,选择Web服务器。

2) 选择右侧 处理程序映射

3) 点击右上角菜单 查看经过排序的列表

4) 列表最下方有个StaticFile的处理程序,将其移动到3个ExtensionlessUrlHandler的上方。

5) 重启IIS服务。

2) 错误2:

HTTP 错误 404.3 – Not Found

由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。

解决方法:

1) 打开IIS管理器,选择Web服务器。

2) 选择右侧 MIME类型

3) 新增MIME类型,扩展名:*, 类型:application/octet-stream。

4) 重启IIS服务。

若以上方法都无法解决问题,则可以尝试恢复处理程序映射:

1) 打开IIS管理器,选择Web服务器。

2) 选择右侧 处理程序映射

3) 点击 恢复为父项

4) 重启IIS服务。

以下是部分截图:

错误信息:The ACME server was probably unable to reach

错误信息:The ACME server was probably unable to reach


分享到:


相關文章: