サイトのHTTP://バージョンへのすべての試行をHTTPS://に相当するものにリダイレクトするクリーンな方法はありますか?
cpuguru
質問する
71438 次
6 に答える
178
ここ IIS-aid.com で説明されている方法が最もクリーンな方法だと思います。これは web.config のみであるため、サーバーを変更した場合、403.4 カスタム エラー ページやその他の特別なアクセス許可で行ったすべての手順を覚えておく必要はありません。
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" 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>
于 2011-09-30T02:12:43.863 に答える
14
私が見つけた最も簡単でクリーンな解決策は、
SSL設定で-> SSLが必要
エラー ページ -> 403.4 エラー時 -> HTTPS サイトにリダイレクト
エラー ページ -> 機能設定の編集... -> ローカル リクエストの詳細なエラーとリモート リクエストのカスタム エラー ページの設定
利点は、追加のコード行を必要としないことです。欠点は、絶対 URL にリダイレクトされることです。
于 2016-07-14T08:31:30.860 に答える
0
私は従来のASP(イントラネット)を使用しており、ログインが必要なページでは、ログオンインクルードファイルがリダイレクトを行います:
if Request.ServerVariables("SERVER_PORT_SECURE") <> "1" or Request.ServerVariables("HTTPS") <> "on" then
Response.Redirect "https://" & Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
end if
もちろん、これには GET または POST データは含まれません。したがって、実際には、保護されたページへのクリーンなリダイレクトです。
于 2018-12-11T13:46:20.640 に答える
-4
「きれいに」とは、300リダイレクトのように意味すると思います。ここで多くのサーバーと言語を設定します。
于 2008-09-05T17:56:34.253 に答える