
昨日、「がとらぼ」をHTTP/2化しました。
直前にはINTAA.NETの公式サイトもHTTP/2化を済ませており、こちらではウェブサーバをApacheからNginxに切り替えるのに手間取りましたが、もともとSSL対応のサイトだったため、暗号化方式の変更以外には大きな問題もなく、比較的スムーズに移行できました。(ちなみに、今回の目的はHTTP/2化ではなく、元々予定していたApacheからNginxへの移行が主な理由でした)
一方、「がとらぼ」は、もともとNginxで運用していたため、簡単にHTTP/2化できると思っていました。しかし、元がSSL非対応のサイトだったため、実際にはHTTP/2化よりもSSL化に関する問題が多く、様々な不具合が発生しました。
サーバーの設定やSSL証明書の導入だけでなく、いくつかの技術的な調整が必要となり、思った以上に手間がかかりました。
たとえば、画像のURLを何も考えずに「http://」で指定していたことが問題になりました。Amazonの画像リンクも同様で、日本のアフィリエイトリンクは未だにSSL非対応が多く、結果としてリンクの修正作業が必要でした。
幸い、WordPressには「Search Regex」という便利なプラグインがあり、一括でリンクの置換ができたので、ほとんどの問題を迅速に解決できました。このプラグインがなかったら、相当手間がかかったと思います。
ちなみに、WordPress自体はHTTP/2対応において何の不具合もなく、心配していたトラブルは杞憂に終わりました。
NginxのHTTP/2に関連するディレクティブは、現時点ではすべてデフォルト設定のまま使用しています。特に調整を必要とせず、デフォルトの設定で十分なパフォーマンスを発揮しています。
年末ぎりぎりのタイミングでしたが、なんとか2015年中にこの作業を完了できたことは安心しました。
2015年12月17日追記:
AdSenseについては、SSL対応のサイトでも広告を表示できるのですが、SSL化されていない広告は表示されないという制約があります。つまり、SSL化することで表示できる広告の種類が減る可能性があるため、収益に影響が出るかもしれません。
「がとらぼ」のような趣味のサイトであれば問題ないですが、広告収入を重視するサイトの場合、現段階でのSSL化は慎重に検討する必要があると言えるでしょう。
HTTPS 対応サイトでは、広告を含むページ上のすべてのコンテンツが SSL に準拠している必要があります。SSL 非準拠の広告は、HTTPS 対応ページに掲載する広告を決めるオークションから除外されるため、SSL 非準拠の広告は表示されません。
そのため、HTTP サイトを HTTPS サイトにした場合、HTTP ページに広告を掲載する場合よりも収益が低くなる可能性がございます。