我正在尝试使用 Certify SSL Manager 在我的 IIS 服务器上配置来自 Let's Encrypt 的 SSL 证书,但它在检查过程中失败。
https://dev.mywebsite.com/.well-known/acme-challenge/configcheck/
这有效:
https
: //dev.mywebsite.com/well-known/acme-challenge/configcheck https://dev.mywebsite.com/.well-known/acme-challenge/test.txt
所以我假设它是 . 众所周知之前。但是 test.txt 有效的事实让我感到困惑。
我已经根据这个讨论配置了目录:https : //github.com/ebekker/ACMESharp/issues/15
我的 web.config 中有一堆重写的东西,但即使我完全删除了该部分,它仍然失败。
更新:
@Paul0515 建议与此相结合似乎解决了这个问题
public static void RegisterRoutes(RouteCollection routes)
{
//this is for the "Let's Encrypt" SSL confirmation
routes.IgnoreRoute(".well-known/");
}
Run Code Online (Sandbox Code Playgroud)
也许检查 acme-challenge web.config 的处理程序部分中是否包含冲突。为此,请打开 IIS 管理器,找到 acme-challenge 文件夹,然后双击处理程序映射图标。就我而言,这导致了错误。
我在 acme-challenge 文件夹中的默认 web.config 中遇到的问题是 applicationhost.config 包含:
<section name="handlers" overrideModeDefault="Deny" />
Run Code Online (Sandbox Code Playgroud)
因此,acme-challenge web.config 中的处理程序部分是不允许的,结果是挑战失败。在这种情况下,解决方案是: 将 applicationhost.config 行更改为:
<section name="handlers" overrideModeDefault="Allow" />
Run Code Online (Sandbox Code Playgroud)
或者...从 acme-challenge 文件夹中的 web.config 中删除处理程序设置。
applicationhost.config 可以在这里找到:c:\windows\system32\inetsrv\config
| 归档时间: |
|
| 查看次数: |
3574 次 |
| 最近记录: |