httpsの証明書を取得したけどhttpアクセスを許しちゃったのでGoogle Analyticsで収集がつかなくなって困った話
「httpsの証明書を取得したけどhttpアクセスを許しちゃったのでGoogle Analyticsで収集がつかなくなって困った話」
目標:httpsの証明書を取得、且つGoogle Analyticsを導入してサイト管理
目次:
1.https(SSL/TLS)の証明書を取得
2.wordpressサイトにGoogle Analyticsを導入
3.httpへのアクセスをhttpsにリダイレクトする
1.https(SSL/TLS)の証明書を取得
Googleは検索ランキングのシグナルにHTTPSを入れてますし、何よりセキューリティ確保のためにもSSL/TLSの証明書取得は必須だなと日々思ってたのでやりました。
きっかけは勉強会で教えてもらった"Let's Encrypt"ってオシャレなサービス。 無料でSSL/TLSの証明書を取得できます。すごい
サイトにアクセスすると「すべてはCertbotがやってくれますよ」みたいなことが書いてあるのでそちらへ移動。
自分の環境(WebサーバーとOSのみ)を選択すると、むちゃくちゃ簡単なインストール方法が案内されます。
自分はApacheをCentOS6で使ってたので、以下の方法が表示されました。
$ sudo yum install epel-release # epelアドオンパッケージを入れてー # 途中「対象のドメインを入力する画面」とか「HTTPからのアクセスはどうする?」みたいなことは聞かれるので応える。 $ wget https://dl.eff.org/certbot-auto # certbotをダウンロードしてー $ chmod a+x certbot-auto # 言われるがままーw $ ./certbot-auto # certbot実行!
これで動いちゃいます。
対象のドメインにアクセスしたらhttpsがついとるがなー。
やばい、簡単、無料、安全、最高(でも3ヶ月で証明書切れるから更新忘れずに)。
ここで僕はミスりました。。"https://ホニャホニャ"も"http://ホニャホニャ"どっちでもアクセスできるようにしてしまってました。
2.wordpressサイトにGoogle Analyticsを導入
Webメディアの運用状況を管理するためにGoogle Analyticsを導入しやした。
WordPressのサイトだったのでWordpress用の
トラッキングタグはgoogle analyticsのサイトに入ってGoogleアカウントがあれば、そんなに困らず獲れます。
WordPessにGoogle Analytics導入にはプラグインが楽。(こちらを参考にさせていただきました!)
WordPressのサイトにトラッキングタグは入れられないので、トラッキングIDを覚えましょうぜ。
。。。ここで事件発生
"https://ホニャホニャ"と"http://ホニャホニャ"
どっちにすんねん!!!
どっちもアクセスできるってことは両方のトラッキングIDが要る。
けど、WordPressのプラグインには二つのトラッキングID入れられないし、同じプラグイン二つ導入するとかも無理。
ヤバだな。。。。
いろいろ考えましたが、絶対生かす"https://ホニャホニャ"のトラッキングIDを発行してこちらの案内に従って設定しました。
プラグインの名前は"Google Analytics by MonsterInsights"に変わってましたが、同じ設定で行けましたね。
3.httpへのアクセスをhttpsにリダイレクトする
やっちまったことはしゃーないので、対策を検討。
certbotの設定変更するか・・・・
結構ハイハードル。。
じゃあもう"http://ホニャホニャ"で来たら"https://ホニャホニャ"にリダイレクトさせよう!
ってことでWebサーバーで設定変更しました。
$ cd /etc/httpd/conf $ vi httpd.conf # Apacheの設定ファイルにアクセスして編集
以下の行を探して
# LoadModule rewrite_module modules/mod_rewrite.so
コメントじゃなくして(#を採る)リダイレクトの設定を書き込む。
LoadModule rewrite_module modules/mod_rewrite.so <VirtualHost *:80> ServerName www.example.com <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule> </VirtualHost>
Webサーバーの設定を変えたので、再起動しときます。
$ service httpd restart
なんということでしょう。
"http://ホニャホニャ"にアクセスしたら"https://ホニャホニャ"にリダイレクトしました。
この技はこちらのサイトに学びました。
問題解決。....ふぅ
環境