2017-08-29 21 views
0

私の要件は簡単です。私はそれを作る必要がありますHttps://abc。 web.configにfolowingコードを追加しました。つまり、IISで新しいルールが追加されました。 私はIISでURL書き換えモジュールをフォローしました。HttpからHttpsへのURL書き換え

<rewrite> 
      <rules> 
       <rule name="http to https" stopProcessing="true"> 
        <match url="(.*)" /> 
        <conditions> 
         <add input="{HTTPS}" pattern="^off$" /> 
        </conditions> 
        <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Found" /> 
       </rule> 
      </rules> 
     </rewrite> 

しかし、それでも私のためには機能しません。私を助けてください。

+0

は、IIS書き換えモジュールをインストールしたことがありますか? –

+0

はい。既に行われているので、そこから新たなルールが追加されました。コードは新しいルール自体に属します。 –

答えて

0

使用しているコードは、私はredirectType="Permanent"を使用することを除いて、製造に使用するものと非常によく似ていると私は正規のドメインを確保するためにハードコードされたドメイン名を使用するように起こると私はパスとクエリの{R:1}を使用しますが、私は思います{HTTP_HOST}{REQUEST_URI}を使用して作業する必要がありますが、2つの間にスラッシュが必要な場合があります。

は、この試してみて:

<system.webServer> 
    <rewrite> 
     <rules> 
      <rule name="http to https" stopProcessing="true"> 
       <match url="(.*)" /> 
       <conditions> 
        <add input="{HTTPS}" pattern="^off$" /> 
       </conditions> 
       <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" /> 
      </rule> 
     </rules> 
    </rewrite> 
</system.webServer> 
+0

ロンに感謝しますが、私もこれを試しました。動いていない。私は別の方法でそれを持っている。 IISでデモWebサイトを作成しました。同じDNS名(Http:// abcからのababc)を与えます。コードが 'function redirecttoHttps() { var httpsUrl =" https:// abc "という単一のHTMLページを追加しました。 window.location = httpsUrl; } redirecttoHttps(); ' したがって、ユーザーがHttp:// abcを入力すると、Htmlページ内のスクリプトはHttps:// abcにプッシュします。 推奨されているかどうかわかりません。最終的にHttps:// abcサイトのユーザー検証が行われているためです。私たちがやっていることだけがリダイレクトされます。 –

+0

これは奇妙です。あなたが試すことができるもう1つの方法は、 'url =" https:// {HTTP_HOST}/{R:1} "' 'url =" https://yourDomainHere.com/{R:1} "に変更することです" 'これは実際に私のサイトがどのように設定されているかです。 –

関連する問題