この記事は約 4 分で読めます。
ユウキです。
TCD「Be」を使ったウェブサイトで Lighthouse を参考に最適化していく際、結果表示の SEO 項目に次のメッセージが表示されました。
robots.txt is not valid – 4 errors found
(robots.txt が無効です – 4 つのエラーが見つかりました)
If your robots.txt file is malformed, crawlers may not be able to understand how you want your website to be crawled or indexed.
(robots.txt ファイルの形式が正しくない場合、クローラはウェブサイトのクロールやインデックス作成の方法を理解できないことがあります。)
robots.txt の記述が <p> タグで囲まれていることに問題があるようです。
WordPress テーマ TCD「Be」を有効化した際に、一部でこの問題が発生するケースを確認したので、解決方法について解説していきます。
目次
初期の robots.txt は仮想ファイル
今回のケースでは、記述内容を書き換える必要があるのですが、エックスサーバーの WebFTP などを探しても該当ファイルは見当たりません。
というのも WordPress で作ったウェブサイトの robots.txt は、特定のファイルがあるわけでなく、自動的に仮想ファイルを生成する仕様のようです。
解決するには、修正したファイルをサーバーにアップロードして、Google に更新のリクエストを送信します。
robots.txt を修正する
今回の場合は単純に <p> タグを削除するだけで解決します。Google の robots.txt テスターにアクセスして編集しましょう。
robots.txt を編集してダウンロードする
リンクから robots.txt テスターに移動すると、次のような画面となります。
該当箇所を修正して【送信】をクリックすると表示される画面から【ダウンロード】を選択して txt ファイルを取得します。
robots.txt をサーバーにアップロードする
取得した修正済みの robots.txt を、サーバーにアップロードします。今回はエックスサーバーを例に進めていきます。
エックスサーバーアカウントにログイン後、【ファイル管理】→【ドメイン名】→【public_html】へ移動して、【ファイルのアップロード】から robots.txt を選択してアップロードします。
Google に更新リクエストを送信する
サーバーにアップロードが完了したら、robots.txt テスターに移動して【送信】→【Google に更新リクエスト:送信】をクリックすれば修正作業は完了となります。
補足:robots.txt の意図と自動生成される内容
robots.txt には次の 4 つの命令があり、目的は次の通りです。
命令 | 目的 |
---|---|
User-agent | 命令を与えるクローラーを指定する |
Disallow | クロールをブロックするディレクトリやページを知らせる |
Allow | クロールを許可するディレクトリやページを知らせる |
Sitemap | sitemap の場所をクローラーに知らせる |
robots.txt の定型文
通常 WordPress では robots.txt が次のように自動生成されています。
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://example.com/sitemap.xml
All in one seo pack などで xml サイトマップ を生成すると、上記のように表示されます。
もし修正が必要な場合は、example の部分をドメイン名に変更して修正されてください。
サイト運営者の意図によって robots.txt の記述は様々なので、より詳細に知りたい方や設定されたい場合は、バズ部の robots.txt に関する記事を参考にされてみてください。
まとめ
TCD「Be」を利用しているサイトをピックアップしていくつか検証した際、同様の robots.txt is not valid 4 errors found という問題が起きていました。
併せて特殊検索(site:)で Google のインデックス状況を確認したところ、登録はされていたので、実際には問題ないようにも感じましたが、検索エンジンのクローラ bot に巡回してもらいやすくするためにも対処しておくべきです。
それでは、今回はこの辺で。
ありがとうございました!