web-dev-qa-db-ja.com

HTTPをHTTPSに強制/リダイレクトする方法

私は過去3〜4年間Win2003サーバーでドメインをホストしてきましたが、今ではこのドメインにHTTPS経由でのみアクセスできるようにする必要があります。

証明書を正しくインストールし、正常に動作します(サーバーは複数のドメインをホストしますが、このドメインは別のパブリックIPアドレスでホストされます)が、IISを取得するのに苦労しています http://www.example.com にアクセスするすべてのユーザーを https://www.example.com に移管します。

IISで「セキュリティで保護されたチャネルが必要」オプションを見つけましたが、これをチェックすると、https://部分の入力に失敗すると、エラーメッセージ(以下)が表示されます。ユーザーをHTTPSサイトにリダイレクトする最良の方法は何ですか(ユーザーが心配する必要はありません)?

ページはセキュリティで保護されたチャネルで表示する必要がありますアクセスしようとしているページはSecureSockets Layer(SSL)で保護されています。

次のことを試してください。

到達しようとしているアドレスの先頭にhttps://と入力し、Enterキーを押します。

HTTPエラー403.4-禁止:このリソースを表示するにはSSLが必要です。

2
Dan

IISを使用してHTTPをHTTPSにリダイレクトする

SSLを有効にすると、http経由でページにアクセスしようとすると、サーバーは403.4エラーを生成します。 IISは、このエラーが発生するたびにsslredirect.aspページを実行するように構成されています。エラーページには、エラー番号とエラーの原因となっているページを含むクエリ文字列、つまり「403;-」が含まれます。 http://www.whatever.com "。ASPファイルは、単純なスクリプトを使用して、最初の部分(430; http)を削除し、必要な"を追加します。 https」、SSLを使用してユーザーが要求したページにリダイレクトします。出来上がり!

5
Ryan

最もクリーンな方法は、mod rewriteisapiフィルターをインストールすることです。そして、すべてのhttp呼び出しをhttpsにリダイレクトします(または、必要に応じて特定のフォルダー/ページの呼び出しのみ)。

http://www.isapirewrite.com/

これを行う方法を説明する記事があります+提案された他のいくつかに言及しています。 http://www.iis-aid.com/articles/how_to_guides/three_methods_redirect_http_https

3
JamesRyan

Microsoftナレッジベースの記事を確認してください Outlook Web AccessクライアントのHTTP接続をHTTPSにリダイレクトする方法と、Exchange仮想ディレクトリを指すように既定のWebサイトをリダイレクトする方法

これを正しく構成するには、いくつかの手順があります。コードは次のとおりです。

<%

If Request.ServerVariables("HTTPS")  = "off" Then
Response.Redirect "https://" & Request.ServerVariables("HTTP_Host") & "/Exchange"
End If 

%> 
2
Vivek Kumbhar