2

私のウェブサイトでhttpsを適用したいのは私のウェブサイトページ「securepage.aspx」の1つだけです

私のウェブサイトはhttp://www.test.com/のように見えます

私の安全なページはhttps://www.test.com/securepage.aspxになります

JS / Imagesなどのすべてのリソースはアセットフォルダーにあり、ルート上のWebサービスはcommonwebserviceフォルダーにあります。

http://www.test.com/assets/js/

http://www.test.com/assets/images/

安全なページにhttpsを適用すると、そのページはChromeブラウザでCSSとJSファイルを使用しました。つまり、CSSとJSの絶対URLを使用したとしても、ページ全体が台無しになりました。

この場合、私のWebサービスはすべてのブラウザで500エラーを出します。

誰かがこの状況に対処するための最良の方法を提案し、私に導くことができますか?

4

1 に答える 1

1

あなたが見ている動作はイライラしますが、正しいです。HTTPS を使用してページを提供する場合、すべてのリンクされたコンテンツも HTTPS で提供する必要があります。

プロトコル相対 URL を確認してください ( http://paulirish.com/2010/the-protocol-relative-url/ )

基本的に、それらは次のようになります。

<img src="//domain.com/img/logo.png">

ページが HTTP の場合、リソースは HTTP で読み込まれ、HTTP の場合は HTTPS で安全に読み込まれます。

両方の下で CSS/JS/WS コンテンツを提供するようにサーバーを設定する必要がありますが、一度設定すると、上記の相対リンクを使用して 2 つの間をシームレスに切り替えることができます。そのため、マスター ページのリンクには相対形式を使用してください。そうすれば、コンテンツ ページが HTTP または HTTPS で実行されているかどうかに関係なく、リソースはページと同じプロトコルからプルされます。

于 2013-02-05T19:55:28.707 に答える