Google AdSenseでサイトは審査不能になったときの対応

Google AdSenseを申請して「サイトは審査不能」と言われてしまったときに、いったいなんの対応をすればいいのか悩むと思います。以下がGoogleから「サイトは審査不能」と連絡が来たときのメールの一部です(図1)。

図1

文面には、

  • サイトがダウンしている
  • 表示できない状態
  • YouTube や Blogger などの AdSense ホスト パートナーからお申し込みいただいた場合
  • 利用できない
  • 見つからない

とあるけど、実際に自分でサイトを確認するとブラウザにちゃんと表示できるし、サーバーがダウンしていたという情報もレンタルサーバーの提供元にも載っていないし、「YouTube や Blogger などの AdSense ホスト パートナー」からの申込にも心当たりないし(していないし)、なにを言っているの?と思ってしまいます。僕も「サイトは審査不能」と判定された一人であり、僕が対応したことを書いておきます。

正直、僕はなにもせず再申請をしてしまおうかとも思いました。理由は「ちゃんと表示できているから」です。とはいえ、ネットで調べてみて他の方の対応と見比べ、これが一番理屈に叶うと思ったコトをしてみました。

Google Search Consoleで確認する。

「Search Console」とは、サイトがGoogleにどのように認識されるかを確認し、検索結果でのサイトのパフォーマンスを最適化できるGoogleが提供しているWEB上のツールです。このSearch Consoleのなかに「Fetch as Google」という機能があります。Fetch as Googleでは、ウェブサイトのページがGoogleでどのように表示されるかを確認することができます。これを試してみました。Fetch as Googleにある「取得してレンダリング」のボタンを押下。以下が結果です(図2)。

図2

「一時的にアクセスできません」となっていました。でも、ブラウザからはちゃんとアクセスできるし表示もできます。この判定ですが、人が見たときの見栄え(表示)の話ではなくて、サイトを巡回しているGoogleのロボット(クローラー)がサイトを解析できているか?ということによる判定のようです。どうやらクローラーにサイト構造が伝わってないみたいでした。。

[広告]


クローラーについて調べてみたところ、robots.txtが必要とのことなので早速、用意しました。サイトはWordpressで作成していたのですが、明示的にrobots.txtを作成してWordpressが配置されているルートディレクトリの直下に置きます(「wp-admin」や「wp-content」ディレクトリと同じ階層です)。robots.txtは以下のようにしました。

==============================
(robots.txtの中身)
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

Sitemap: https://サイトのURL/index.php?xml_sitemap=params=
==============================

再度、Fetch as Googleの「取得してレンダリング」を実行したところ、緑のチェックがついてステータスが「一部」となっており大丈夫?なのかが少し気がかりです(図3)。

図3

本来であれば以下の図4のようにステータスは「完了」になるのだけれど。。

図4

図3の「一部」のところにカーソルをあわせてクリックすると、サイトがGoogleにどのように認識されているかが表示されて、確認することができます。その表示の下に「Googlebot はこのページの一部のリソースを取得できませんでした。取得できなかったリソースは次のとおりです」との文言が載っていました(図5)。どうやら、これらのリソースが取得できないので「一部」となってしまったようです。

図5

これらリソースですが、調べてみたら以下のようです。

https://pagead2.googlesyndication.com
→ Adsense申請時に「head部に貼り付けてください」とGoogleに言われたURLのサーバっぽい。

https://googleads.g.doubleclick.net
→ Google Analytics に関連したサーバーらしい。

二つともGoogleと関連するサーバーなので、どうしようもなく無視することにしました。これ以上は他にできないので、この状態でAdSenseの再申請をしました。再申請までにあけた期間は1日です(朝に「サイトは審査不能」の通知が来て、翌日の夜に再申請をしました)。その結果は・・

図6

「お客様のサイトが AdSense に接続されました」とGoogleから通知が来ました(やったー)。この通知も再申請の翌日でした。「サイトは審査不能」で困っている人がいたら、試しにSearch Consoleで自分のサイトを確認してみてください。

Let’s Encrypt でTLS証明書を更新する。

Let’s Encrypt のTLS証明書を更新してみました。試した環境は以下です。

CentOS 6.10 + Apache 2.2.15

有効期限を確認します。ブラウザのURL入力欄の鍵マークをクリックし、ウェブサイトの識別情報で確認します。Firefoxの例です。※他のブラウザでもURLの鍵マークをクリックして証明書の内容を確認できると思います。

有効期限は、10/17です。前回の記事「Let’s EncryptでTLS化する(前編)」で Let’s Encrypt のインストールのときに使用した certbot-auto を使用します。作業は root ユーザで行います。certbot-auto があるディレクトリまで移動して、以下のコマンドを実行します。

# ./certbot-auto renew

※Let’s Encrypt では有効期限が30日未満になると更新ができます。それ以上あると更新されません。強制的に更新するオプションもあるので、有効期限が30日以上残っている場合で更新したいときは「certbot-auto renew --force-renew」とすることで更新できます(これは試していませんけれども・・)。

このとき、Apacheは起動したままにしておいてください。僕はApacheを一旦停止して「certbot-auto renew」を実行したため、一度更新に失敗しました。。。

[広告]

気を取り直して、、Apacheを起動して実行すると、以下の結果が表示されます。

念の為、Apacheを再起動します。また、ブラウザの表示もリフレッシュさせます(再読込、もしくは、F5キー押下)。ブラウザのウェブサイトの識別情報で有効期限が延長されたことを確認します。

これで、無事、TLS証明書の更新ができました!

ちなみに、、TLS証明書の更新により何が変更されたのかサーバーの設定ファイルを確認してみました。certbot-auto でTLS証明書をインストールしたときにはコンフィグファイルの書き換えを行っていましたが、更新のときは書き換えは行われていないようです(以下のファイルはいづれも変更はなし)。

/etc/httpd/conf/httpd.conf
/etc/httpd/conf.d/ssl.conf
/etc/httpd/conf/httpd-le-ssl.conf
/etc/letsencrypt/options-ssl-apache.conf

TLS証明書が格納されているディレクトリは、confファイルに以下のように定義されています(僕の場合は ssl.conf に記載しています)。

SSLCertificateFile /etc/letsencrypt/live/(サイトのサーバ名)/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/(サイトのサーバ名)/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/(サイトのサーバ名)/chain.pem

/etc/letsencrypt/live/(サイトのサーバ名) 配下には証明書が配置されていますが、これはシンボリックリンクとなっており、このリンクが更新されていました。リンク先は「/etc/letsencrypt/archive/(サイトのサーバ名)」です。

リンク先のほうのファイルを確認すると、新たに証明書が新規作成されていました(2018/09/22に作成されているものが該当)。証明書ファイルを新規作成し、リンク先を古いものから新しいものに切り替えることでコンフィグファイルの修正はなしとしているようです。

あと、やってみて気づいたのですが、有効期限が「10/17」だったものを更新したので「10/17」から3ヶ月延長されると思ったのですが、そうではなくて、実施日「9/22」から3ヶ月延長されたようです。

その後だけれど、「Let’s Encrypt Expiry Bot」という差出人から「Let’s Encrypt certificate expiration notice for domain “(サイトのドメイン名)”」というタイトルでメールが届きました。内容は、Let’s Encrypt で取得したTLS証明書の有効期限が近づいたので更新してください、というもの。すでに更新したのですれ違いになったようです。更新期限が近づくとメールでも案内していたんですね。そういえば、TLS証明書をインストールするときに連絡先のメールアドレスを設定したのを思い出しました。こういう連絡のときにメールアドレスが使われるのですね。。

以上。