自动将http重定向到https - web.config - 适用于Windows的Plesk 12.0.18

时间:2017-03-15 11:37:56

标签: windows web-config plesk

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

奥列格提出的更新:

  • 在域名为goliax.com

  • 上启用了SSL
  • 浏览器中请求的网址为goliax.com,如果重定向正常,则会打开secured connection goliax.com而不是

  • 在应用更改后,可以在浏览器中看到我在根目录中执行的所有操作

1 个答案:

答案 0 :(得分:2)

以下httpdocs/web.config适用于Windows 2012:

<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应该有效。 您可以在Tools&Settings&gt;中找到Plesk用户界面。 Server Components

IIS URL rewrite module plesk