web.config <location> 中带点的路径
path with a dot in web.config <location>
我需要在我的 web.config 文件中添加一个位置元素,但路径以点开头(我认为我无法更改该路径,它用于 letsencrypt 自动化) .
如果我让点,就像在 <location path=".well-known/acme-challenge"></location>
中一样,网站根本不会启动(我认为 web.config 文件根本没有被解析,因为我得到了要求我的页面配置customErrors,但它已经配置并且通常工作正常)
如果我删除点,就像在 <location path="well-known/acme-challenge"></location>
中一样,web.config 文件会正确加载,但当然这不会帮助我在我希望的位置配置任何东西。
最终目标是仅在此路径上禁用基本身份验证(我需要对站点的其余部分进行验证);我什至不知道我是否能够在 <location>
元素中进行设置。
正如 Ondrej Svedjdar 在评论中所建议的那样,解决方案非常简单,我没有考虑过。
只需在您需要的文件夹中添加另一个 web.config 文件即可。
我有一个类似的问题,我有一个 ASP.NET 表单站点强制对所有页面进行身份验证。
为了扩展已接受的答案,这里是 web.config 我放入 /.well-known
文件夹(不是 /.well-known/acme-challenge
文件夹)的确切答案:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<!-- This will stop any redirects you have at the higher level -->
<httpRedirect enabled="false" />
<!-- This will stop any integrated mode settings you have at the higher level -->
<validation validateIntegratedModeConfiguration="false"/>
</system.webServer>
<!-- This will allow unauthenticated users to acme-challenge subfolder -->
<location path="acme-challenge">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
</configuration>
添加此文件后,我可以EcdsaAcmeNet在 IIS 中对网站使用 Lets Encrypt。
我需要在我的 web.config 文件中添加一个位置元素,但路径以点开头(我认为我无法更改该路径,它用于 letsencrypt 自动化) .
如果我让点,就像在 <location path=".well-known/acme-challenge"></location>
中一样,网站根本不会启动(我认为 web.config 文件根本没有被解析,因为我得到了要求我的页面配置customErrors,但它已经配置并且通常工作正常)
如果我删除点,就像在 <location path="well-known/acme-challenge"></location>
中一样,web.config 文件会正确加载,但当然这不会帮助我在我希望的位置配置任何东西。
最终目标是仅在此路径上禁用基本身份验证(我需要对站点的其余部分进行验证);我什至不知道我是否能够在 <location>
元素中进行设置。
正如 Ondrej Svedjdar 在评论中所建议的那样,解决方案非常简单,我没有考虑过。
只需在您需要的文件夹中添加另一个 web.config 文件即可。
我有一个类似的问题,我有一个 ASP.NET 表单站点强制对所有页面进行身份验证。
为了扩展已接受的答案,这里是 web.config 我放入 /.well-known
文件夹(不是 /.well-known/acme-challenge
文件夹)的确切答案:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<!-- This will stop any redirects you have at the higher level -->
<httpRedirect enabled="false" />
<!-- This will stop any integrated mode settings you have at the higher level -->
<validation validateIntegratedModeConfiguration="false"/>
</system.webServer>
<!-- This will allow unauthenticated users to acme-challenge subfolder -->
<location path="acme-challenge">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
</configuration>
添加此文件后,我可以EcdsaAcmeNet在 IIS 中对网站使用 Lets Encrypt。