本WordPressサイト(Azure Web Apps)をHTTPS化しましたので、備忘録として残しておきます。
基本的な作業の流れは公式サイトのとおりです。
Azure WebAppの価格レベルをアップグレードする
これまではとりあえず独自ドメインが設定できればよかったので、「D1 Shared」したが、HTTPS化するには「B1」以上の必要があるとのこと。
変更する際、値段が安いのでOSはLinuxを選択しましたが、後でちょっとした制限を知ることになりました。
Let’s Encrypt
無料SSLとしてよく聞くLet’s Encryptを使おうと思いましたが、3ヶ月ごとに更新が必要とのこと、自動更新の手段を探しました。
Let’s Encrypt Site Extensionで出来そうだと思い、手順どおりストレージアカウントやサービスの登録などやっていたのですが、拡張機能導入のボタンが無効のままで、実行できませんでした。WebAppのLinux版は拡張機能に対応していないことがわかりました。
さくらのSSL
仕方が無いので、安価なSSLということで、さくらのSSLを使うことにしました。
証明書発行までの手続きはe-mail説明してもらえるので、そのとおりにすればいいのですが。。。
以下のような場所に認証ファイルを配置する手続きがあり、ここで手間取りました。
http://[ルートドメイン名]/.well-known/pki-validation/[ランダムな文字列].txt https://[ルートドメイン名]/.well-known/pki-validation/[ランダムな文字列].txt
ルートドメイン(naked domain)を Azure App Service にマップする
「www.[ルートドメイン]」はマップしていたのですが、naked domainはマップしていませんでした。お名前.comの設定をしばらく行っていたのですが、ここにあるとおり、AレコードとTXTレコードを設定する必要がありました。
これでnaked domainをマップでき、認証ファイルを配置して以降の作業を進めることができました。
WordPressアドレスとサイトアドレスが無効になっている
ここからはWordPressの設定で、各所の「http」を「https」に変更すればいいのですが、[設定] – [一般]にある「wordpressアドレス」と「サイトアドレス」が無効になっていて変更できない状況でした。
色々な対処方法を試しましたが、SQLデータを変更するしかなくなったので変更しました。
Azure SQL Databaseを使っているので、このあたりの方法でアクセスすればいいのですが、その前に以下が必要だったはずです。
- [接続のセキュリティ] – [ファイアウォール規則]
- Azure サービスへのアクセスを許可 を「オフ」にする
- 規則として、「開始IP:0.0.0.0」「終了IP:255.255.255.255」を追加
作業が終わったら元にもどします。
これでHTTPS化が完了しました。
コメントを残す