我正在尝试将我的所有URL都重写为HTTPS,但是出现此错误,不确定我在做什么错:
配置错误
无法在此路径上使用此配置部分。有时候是这样的当节锁定在父级时。锁定是通过默认值(overrideModeDefault =“ Deny”),或由位置明确设置带有overrideMode =“ Deny”或旧版allowOverride =“ false”的标签。
web.config:
<rewrite>
<allowedServerVariables>
<add name="HTTPS" />
<add name="X-FORWARDED-PROTO" />
</allowedServerVariables>
<rules>
<rule name="HTTPS_AlwaysOn" patternSyntax="Wildcard">
<match url="*" />
<serverVariables>
<set name="HTTPS" value="on" />
</serverVariables>
<action type="None" />
<conditions>
<add input="{HTTP_X_FORWARDED_PROTO}" pattern="https" />
</conditions>
</rule>
</rules>
</rewrite>
我还在Docker容器上安装了重写模块和ARR
# Install Url Rewrite
ADD https://download.microsoft.com/download/1/2/8/128E2E22-C1B9-44A4-BE2A-5859ED1D4592/rewrite_amd64_en-US.msi /install/rewrite_amd64_en-US.msi
RUN msiexec.exe /i c:\install\rewrite_amd64_en-US.msi /passive
ADD https://download.microsoft.com/download/A/D/C/ADC4BAF8-A094-47B5-A6F6-CE4C5ED18BF8/ARRv3_setup_amd64_en-us.EXE /install/ARRv3_setup_amd64_en-us.exe
RUN c:\install\ARRv3_setup_amd64_en-us.exe /Q
首先构建一台普通的IIS 10计算机进行测试,您会注意到相同的错误,因为allowedServerVariables
不能在web.config
中。