web-dev-qa-db-ja.com

IIS URL書き換えルールを使用してサブディレクトリトラフィックをhttpsにリダイレクトします

すべてのsite.comトラフィックをwww.site.comに転送するためのURL書き換えルールを作成したサイトがあります。

正常に動作します。

次に、サブディレクトリのアプリケーションにSSLを追加します。サイトにSSLを追加しましたが、 http://www.site.com/application/ に向かうトラフィックを https://www.site。 com/application

これが私が思いついたものです:

            <rule name="Redirect Supply Management System traffic to https" stopProcessing="true">
                <match url="(.*)/supply-management-system/(.*)" />
                <conditions>
                    <add input="{HTTP_Host}" pattern="(.*)/supply-management-system/(.*)" />
                </conditions>
                <action type="Redirect" url="https://{HTTP_Host}/{R:1}/{R:2}" appendQueryString="true" />
            </rule>

パターンをテストすると、すべて問題ないように見えますが、http経由でアプリケーションに移動しても、リダイレクトされません。

どんなアイデアでも素晴らしいでしょう、ありがとう!

2
Tom

これは機能します:

<rule name="Redirect Supply Management System traffic to https" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
    <match url="(^supply-management-system/.*)" />
    <conditions>
        <add input="{HTTPS}" pattern="off" />
    </conditions>
    <action type="Redirect" url="https://{HTTP_Host}/{R:1}" appendQueryString="true" />
</rule>
1
Tom