2014年の後半はSSL3.0のPOODLE脆弱性が話題になりました。セキュリティ対策に追われたサイトオーナーの方もおられるのではないでしょうか。
SEOの分野では、GoogleがHTTPS始まりのURLを優先的に評価するという発表を行い、話題になりました。
このエントリではMagento上のURLを全て「https://」で始まるように変える方法をご紹介すると同時に、既存サイトにおける対応手順についてご説明します。

Magentoで「http://」ではじまるURLを使わないようにするには

Magentoには「ベースURL」「セキュアベースURL」という設定項目があります。
ウェブサイト・ストアビューの単位で設定ができる項目なのですが、通常は以下のように設定します。 

  • ベースURL → http://example.com/
  • セキュアベースURL → https://example.com/

Magentoは内部処理としてこれらの値を用いてリンクURLや画像ファイルのURLを生成します。
なので全てのページをHTTPS化するのであれば、ベースURLを「https://」ではじまるURLにすればOKです。

ただしこれはあくまでも「標準のMagento」を対象としています。
重度のカスタマイズや、サードパーティ製エクステンションなどを導入している場合は、この限りでない可能性があります。 

全てのページをHTTPS化することによるメリットとデメリット

メリット

全てのページをSSL化することは、Googleの検索順位を向上させる目的で行います。
それ以外にもセキュリティの観点では、暗号化されたページとそうでないページが混在しなくなることによって、Cookieに対するセキュリティ設定を暗号化されたほうに統一できるというメリットがあります。

デメリット

反対にデメリットとしては、HTTPS通信が常に暗号化と復号化を行うために、WebサーバーのCPU負荷が増大することが挙げられます。
一般的に暗号化されていない場合と比較して、HTTPS通信の場合は4〜7倍の負荷がWebサーバーに対してかかってくると言われています。

SSLアクセラレータ機能をもつロードバランサーを利用できる場合は、積極的に利用したいところですが、物理サーバーやVPSサーバー1台での運用の場合は難しい場合があると思います。
ですから、安易に全てのページをHTTPS化してしまうと、サイトのパフォーマンス低下を招く恐れがあります。

既存のMagentoベースのサイトに適用する場合

既存のMagentoをベースとしたECサイトに対して、全てのページをHTTPS始まりに変更する場合は、いくつか注意しなければならないポイントがあります。

  • 商品画像やCSS/JavaScriptファイルのURLが適切に変更できているかを確認する
  • WYSIWYGエディタやCMS機能(静的ブロックも)で挿入した画像などのURLがhttps始まりになっているかを確認する
  • ソーシャルメディアや各種計測タグなどの外部JavaScriptファイルのURLがhttps始まりになっているかを確認する

Magento内部でURLを生成する場合は、Magentoが適切に処理をしてくれるので問題は起きにくいのですが、CMSページや静的ブロック、各種エクステンションなどが挿入するタグに付随するURLはhttp始まりであることが時折見受けられます。
既存のサイトに対して、全てのページをHTTPS始まりに変更する場合は、事前に別の環境できちんとチェックを行うか、切り替え後にブラウザの開発者ツールなどを用いてチェックを行う必要があります。