チェックアウトページのフロントエンドエラーでSSLがアクティブな場合'混合アクティブコンテンツの読み込みをブロック'

SSLを有効にしてからチェックアウトすると、プロトタイプのエラーが発生しました!

混合アクティブコンテンツの読み込みをブロックします

コメント

  • Firefox 23を使用していますか?
  • firefox 22、chrome 27、IE 9を確認します。深く掘り下げることができるので、getURLは安全なURLを送信していません…
  • getURLがロードしているsrcは何ですか? getURLの出力を貼り付けることはできますか?
  • getURLはsrcにhttp://を含むJSファイルの適切なURLを生成しますが、管理者からフロントエンドでSSLを有効にした場合、URLはhttps://である必要がありますが実際にはURLはhttp://なので、エラーによるチェックアウトページです!!理由を調べようとしていますが、まだ運がありません…

回答

これはスクリプトが原因で発生していますHTTP経由でのみテーマに読み込まれます。 HTTP経由でダウンロードしたスクリプトは、HTTPS経由では実行できません。プロトコルに依存しない方法を使用してスクリプトをロードする必要があります:

代わりに:

<script src="http://mysite.com/js/somefile.js"></script> 

これを使用します:

<script src="//mysite.com/js/somefile.js"></script> 

Magentoがこれを正しい方法でロードする必要があるため、Prototype.jsでこれが発生しているとは思えません。ただし、その場合は、カスタムパッケージ/テーマがスクリプトを正しくロードしていない可能性があります。レイアウトXMLを介して<head>に追加するようにこれらを設定する方法に関するチュートリアルをいくつか読んでください。

ここにいくつかのリンクがあります:

http://www.magentogarden.com/blog/javascript-error-install-your-magento-extensions-properly.html

https://stackoverflow.com/questions/8875662/how-to-change-the-prototype-js-url-to-a-google-hosted-version

コメント

  • 私がprobelmを深く掘り下げることができるので、getURLは安全なURLを送信していません。 ..

回答

これは少し古いことは知っていますが、誰かがこれを必要とする場合に備えて。 。 “getUrlを使用していて、このURLが安全である必要がある場合は、これをパラメーターとして渡す必要があります

array(” _ secure “=> true )

Mage::getUrl("", array("_secure"=>true)); 

すべてのgetUrlを変更せずに簡単な方法があるかどうかはわかりませんが、これは動作します。

コメント

  • $ this- > getUrl(' '、array(' secure ' = > $ this- > getRequest()-> isSecure()))は、条件付きでセキュリティを適用します:)
  • 'すばらしい、何かを探していました混合コンテンツが問題になるので、そのように。ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です