自动将 http 重定向到 https - web.config - Plesk 12.0.18 for Windows

Redirect http to https automatically - web.config - Plesk 12.0.18 for Windows

我需要将用户自动重定向到安全的 https 连接。正如我在 Windows 服务器上大量阅读后发现的那样,这是通过 web.config 文件发生的。我尝试了很多选项,但没有任何效果,我什至不确定文件夹 httpdocs 中是否有 web.config 文件或我创建它。话虽这么说,有没有一种方法可以找出正在使用的 web.config 文件,因为我在不同的目录中创建了十亿个文件(好吧,只有 2 个),我需要在其中做什么才能自动重定向访问者?

Oleg 要求更新:

2012 年 Windows 以下 httpdocs/web.config 对我有用:

<configuration>
    <system.webServer>

    <httpErrors>
        <error statusCode="400" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\bad_request.html"/>
        <remove statusCode="401" subStatusCode="-1"/>
        <error statusCode="401" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\unauthorized.html"/>
        <remove statusCode="403" subStatusCode="-1"/>
        <error statusCode="403" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\forbidden.html"/>
        <remove statusCode="404" subStatusCode="-1"/>
        <error statusCode="404" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\not_found.html"/><remove statusCode="405" subStatusCode="-1"/>
        <error statusCode="405" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\method_not_allowed.html"/><remove statusCode="406" subStatusCode="-1"/>
        <error statusCode="406" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\not_acceptable.html"/>
        <error statusCode="407" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\proxy_authentication_required.html"/><remove statusCode="412" subStatusCode="-1"/>
        <error statusCode="412" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\precondition_failed.html"/>
        <error statusCode="414" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\request-uri_too_long.html"/><error statusCode="415" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\unsupported_media_type.html"/>
        <remove statusCode="500" subStatusCode="-1"/><error statusCode="500" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\internal_server_error.html"/>
        <remove statusCode="501" subStatusCode="-1"/><error statusCode="501" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\not_implemented.html"/>
        <remove statusCode="502" subStatusCode="-1"/><error statusCode="502" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\bad_gateway.html"/>
        <error statusCode="503" path="C:\Inetpub\vhosts\domain.win2012.tld\error_docs\maintenance.html"/>
    </httpErrors>

        <rewrite>
          <rules>
            <rule name="httpsredirect" stopProcessing="true">
              <match url="(.*)" />
              <conditions>
                <add input="{HTTPS}" pattern="off" ignoreCase="true" />
              </conditions>
              <action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />
            </rule>
          </rules>
        </rewrite>

    </system.webServer>
</configuration>

如果在 IIS 中安装了 URL Rewrite 模块,这个 web.config 应该可以工作。 您可以在 Plesk UI 中找到 Tools&Settings > Server Components: