Google Search ConsoleからCloudflare Pagesへの所有権の確認は要注意!
あらすじ
Google Search Consoleでアカウントの「所有権の確認」がありますが、Cloudflare Pagesでホスティングしているサイトが対象の場合は、ダウンタイムが発生する可能性があるので要注意ですよという話です。
私は日中にこのダウンタイムを発生させてしまい、多くの人に迷惑をかけてしまったので、その戒めの記事でもあります。寿命が縮まりました。
背景
Google Search Consoleに個人アカウントで登録してしまってたことから、会社アカウントを登録して、そちらに切り替えようとしました。その際に会社アカウントでの所有権の確認をする必要がありました。
実際に遭遇したこと
先ほどのスクショにおいて「確認を開始」をクリックすると以下の画面が開きます。
このまま認証に進むと、注意文言にあるようにCNAMEレコードが削除されます。
Aレコードじゃないし、CNAMEだったら別にいいんじゃ・・。というのが実は罠でして、Cloudflare PagesではCNAMEによる設定は削除してはいけなく必須なのです。
では、CNAMEレコードが削除されるとどうなるかというと、ドメインがCNAMEレコードアドレスで解決できず、522エラーが表示されるようになります。つまりサイトが繋がらなくなってしまうのです。先ほどの警告では「ダウンタイムが発生するかもよ」とありましたが、確実にダウンするのです
そして何が罠かというと、カスタムドメインの状態としてはActiveのままであるので、これを知らない人はどゆこと?ってなります。
ちなみに以前の記事で以下のように書きましたが、今回の事象が原因だったと判明しました。
勝手にCloudFlare Pagesの設定していたCNAMEレコードが消えるという現象に遭遇しました。手動で設定は戻したので、再度アクセスできるようにはなりましたが少し気持ち悪さが残る感じに。
どうすれば良い?
1. ダウンタイムを許容する
先ほどの認証を続行してしまった方向けです。そのまま認証に進むとGoogle Search Consoleの所有権の確認が完了します。
before | after |
---|---|
次に、Cloudflare PagesのDNS設定し直しです。
カスタムドメイン設定時に追加したCNAMEレコードが消えているので、再度追加します。
あとは待機するだけです。私の場合は1時間ほど回復するまで時間がかかりました。
しかしダウンタイムが発生することからこの方法はお勧めはしません。
2. マニュアル設定する(おすすめ)
先ほどの警告画面で出てきた、TXTレコードをCloudflare PagesのDNSレコード設定で追加します。
この方法であれば、追加後Google Search Consoleの所有権の確認ページを開くと、すぐに認証検証され、CNAMEレコードが削除されることもなく、ダウンタイムも発生しませんでした。
CNAMEレコード削除しないと検証過程でコンフリクト起こすと警告文にはありましたが特に問題ありませんでした。
(おまけ)Google Search Consoleでユーザーの削除をするためには
ちなみにですが、削除したいユーザーの所有権の確認の過程で追加したTXTレコードはDNSレコード設定から削除しておく必要があります。今回の自分のケースだと、個人アカウントの所有権確認時に追加されたTXTレコード削除しました。これをしておかないと、「確認済みの所有者のステータスを変更できなかったため、権限を変更できませんでした」とエラーになります。
Cloudflare PagesでのTXTレコード削除↓↓
さいごに
今回のGoogle Search Consoleから所有権の確認のような自動検証は便利なのですが、注意しないと思わぬ事故が発生します。当たり前のことですが、改めて警告文がある場合はしっかり読んで、その影響範囲をしっかり調査してから実行しましょう
Discussion