Google Search Console で原因不明の「URL が Google に認識されていません」

エラー「インデックス登録リクエストに失敗しました」

今回の問題は「インデックス登録をリクエスト」をクリックしても「インデックス登録リクエストに失敗しました」と表示され、ステータスとしては「URL が Google に登録されていません」さらにカバレッジに「URL が Google に認識されていません」と表示され具体的な原因がわからないというもの。

解決方法

色々調べてみたところ robots.txt を作成する必要がある様です。

robots.txt というと、通常はサイトに対するクロールを拒否する目的で設定することが多そうですが、少なくとも Google Search Console ではクロールして欲しい場合でも作成し、明示的に許可する必要がある様です。

robots.txt の作成

robots.txt のファイルの内容としてはとりあえず下記にしておけば大丈夫そうです。

User-agent: *
Allow: /

Nginx での robots.txt 設定

ここからは Nginx で robots.txt を設定する方法ですが、robots.txt をルートディレクトリに配置し、設定ファイルに下記の形で記述します。

location = /robots.txt {
        alias /ルートディレクトリのパス/robots.txt;
}

URL に「/robots.txt」が含まれる場合にサーバー上の robots.txt を参照するという意味です。

ブラウザの URL で「ドメイン名/robots.txt」を叩いた時に下記の様に表示されれば大丈夫なはずです。

ファイルの変更の反映

Nginx の設定ファイルを色々いじって、Nginx を restart してもうまく反映されない様な場合は、Chrome のシークレットモードやブラウザのキャッシュを削除して再度試してみると反映されたりします。

robots.txt テスターで robots.txt ファイルを Google へ送信

過去に Google のクロールを受け付けない形の robots.txt を Google 側で認識してしまっている場合、その後ファイルを編集してインデックス登録のリクエストを行っても引き続きエラーが出てしまいます。

この場合、robots.txt テスターから編集後の robots.txt を Google に送信し、認識してもらう必要があります。

Google Search Console - robots.txt テスター

注意点

Google Search Console でドメインプロパティの登録しかない場合、対象プロパティを選択する際にサイトが表示されず robots.txt テスターを使うことができません。この場合一度 URL プレフィックスプロパティも登録する必要があります。

さくらインターネットの DNS で設定するゾーン情報を理解したい

さくらインターネットのドメイン管理画面でドメインのゾーン情報をヘルプページを見ながらなんとか設定しました。

ただ、それぞれの項目が何を意味しているのかわからなかったので調べたことをまとめます。さくらインターネットの管理画面で設定した内容は下記の画像の通り。ドメイン名「meatthezoo.com」に対して設定しました。

設定内容

簡単ですがそれぞれの設定の意味は下記の通り。

エントリ名タイプデータ説明
@NSns1.dns.ne.jp.「meatthezoo.com」に対してさくらインターネット運営の権威DNSサーバー「ns1.dns.ne.jp.」を指定。
@NSns2.dns.ne.jp.「meatthezoo.com」に対してさくらインターネット運営の権威DNSサーバー「ns2.dns.ne.jp.」を指定。
@A123.456.78.90「meatthezoo.com」を IP アドレス「123.456.78.90」で使用する。
@MX10 @「meatthezoo.com」をメールサーバーに使用する。優先度を 10 に設定。
wwwCNAME@サブドメイン「www」を使用した場合にホスト「meatthezoo.com」と同じ設定を適用する。
mailCNAME@サブドメイン「mail」を使用した場合にホスト「meatthezoo.com」と同じ設定を適用する。
ftpCNAME@サブドメイン「ftp」を使用した場合にホスト「meatthezoo.com」と同じ設定を適用する。

たびたび出てくる「@」は設定対象のドメイン自身(今回の場合 meatthezoo.com)を表すそうです。

タイプとは

「タイプ」項目に登場した文字列の意味は下記の通りです。他にも種類がある様ですがとりあえず今回のゾーン情報の設定に出てきたものだけまとめます。

タイプ意味
NSゾーン情報を管理するネームサーバーのサーバー名を定義するレコード。ホスト(FQDN)をAレコードとして設定されていることが必要。
AIPv4でホスト名とIPアドレスの関連づけを定義するレコード。「www」などのホスト名を入力し、VALUEにグローバルIPアドレスを入力することによって、サーバーへの名前解決が行われる。
CNAME正規ホスト名に対する別名を定義するレコード。ホスト(FQDN)をAレコードとして設定されていることが必要。
MX対象ドメイン宛のメールの配送先(メールサーバ)のホスト名を定義するレコード。ホスト(FQDN)をAレコードとして設定されていることが必要。