サポート » 使い方全般 » robots.txtファイルについて

  • 解決済 koba1023

    (@koba1023)


    Google Search ConsoleにてURLを入力し、テストを行いました。
    結果、「ページにアクセスできません」
        ページが利用できない、ページがrobots.txtによってブロックされているといった理由が
        考えられます。
    でした。

    その後、robots.txtテスターというサイトの存在を知り、自分のURLを入力してrobots.txtファイル中身の確認と評価をしたくてテストを行ったところ、

    「robots.txt取得エラー」
     現在Googleで取得できないrobots.txtファイルがあります。この場合、Googleがrobots.txtを取得す
     るまでサイトのクロールが停止されるか、前回取得したrobots.txtファイルが使用されます。
    と画面表示されました。

    この画面を閉じてCSS言語が入力出来る画面表示に変わり
    「最新バージョン:2021/02/21 12:19エラー」と上に表示されCSS言語で書かれたrobots.txtファイルの中身は無いみたいです。
    ネットサイトで調べたら、通常はCSS言語で書かれたプログラムが表示される様です。

    robots.txtの中身が無いのでサイトで調べたプログラム言語で書き込みを行い、送信をクリックしました。
    画面表示が1~3項目ある表示に変わり2項目の「アップロードされたバージョンを確認」の
    「アップロードされたバ・・・」をクリックしたところ、ロリポップサーバーを使っているのですが、「内部500エラー表示されロリポップサポートに連絡してください。」と表示されました。

    お尋ねしたいのは、WordPressは初期状態ではrobots.txtファイルは存在していないので設置しないと行けないとサイトに書かれていましたが、皆さんはどうされたのですか?
    また、robots.txtファイルの中身のCSSプログラム言語はどんな内容にされたのですか?

    宜しくお願い致します。

11件の返信を表示中 - 1 - 11件目 (全11件中)
  • まずrobots.txtファイルというのはテキストファイルであって、中身は
    `User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php
    Sitemap: https://example.com/wp-sitemap.xml`
    のようなものです。

    きちんとした知識に基づいて手動で設置する場合は別ですが、下手にrobots.txtファイルを設置する必要はありません。試しにファイルを設置せずに、ブラウザから直接あなたのサイトのrobots.txtにアクセスしてみてください。WordPressが上記のような内容のテキストを返してくれるはずです。

    トピック投稿者 koba1023

    (@koba1023)

    Aoba Momouchiさん、回答有難う御座います。

    最初はrobots.txtファイルを設置しないでアクセスしましたが、ブロックされているとエラー表示が出ました。
    Aoba Momoushiさんが書かれているテキストなども書かれておらず白紙の状態です。

    なので、ネットで調べた結果、テキスト内容を書き込みをしないと行けないと判断して行った次第です。
    問題は、テキストを書き込む欄の上に最初から「最新バージョン:2021/02/21 12:19エラー」と表示されています。
    ネットで調べた結果、テキスト内容が書かれていて「OK」と返ってこないと行けないと書かれておりました。
    こんな状態なのですが、どう修正したら良いか分かりませんでしょうか?

    宜しくお願い致します。

    https://2inc.org/blog/2013/02/21/2950/
    などをみると、WordPressをドメイン(サブドメイン)のトップにインストールしなければ WordPress によって robots.txt は自動生成されないようです。
    (wp-includes/class-wp-rewrite.php 内に robots.txt 自動生成のプログラムあり)

    もし
    https://example.com/hogehoge/ 以下に WordPressをインストールしているなら

    robots.txt を https://example.com/hogehoge/robots.txt からアクセスできるように設置して
    その内容については、
    User-agent: *
    Disallow: /hogehoge/wp-admin/
    Allow: /hogehogewp-admin/admin-ajax.php
    Sitemap: https://example.com/hogehoge/wp-sitemap.xml

    になるかと思います。サイトを公開されているなら、サイトのURLを提示すればより適切な回答を得られると思います。

    トピック投稿者 koba1023

    (@koba1023)

    kimipoohさん、回答有難う御座います。

    これまでに色々事情があってWordPressをドメインのトップにインストールしておりません。
    URLは、https://petsitter-koba3.com/WordPress3/です。

    kimipoohさんが言われるhttps://petsitter-koba3.com/WordPress3/robots.txtからアクセスできるように設置するとは、wp-adminフォルダー内の直下にrobots.txtファイルを設置するのでしょうか?

    私の方でwp-admin直下にrobots.txtファイルを設置して試みたのですが、正常に動作しなかったです。
    また、その内容は、
    User-agent: *
    Allow: /wordpress3/wp-admin/admin-ajax.php
    Disallow: /wordpress3/wp-admin/

    Sitemap: https://petsitter-koba3.com/WordPress3/sitemap.xml
    Sitemap: https://petsitter-koba3.com/WordPress3/sitemap.rss
    になります。
    適切な回答を頂けますでしょうか?

    WordPress 直下においてください。

    WordPressインストールフォルダ
    ┣ wp-config.php
    ┣ robots.txt
    ┣ wp-admin/(フォルダ)
    ┣ wp-includes/(フォルダ)
    ┣ wp-content/(フォルダ)

    あと
    User-agent: *
    Allow: /WordPress3/wp-admin/admin-ajax.php
    Disallow: /WordPress3/wp-admin/

    Sitemap: https://petsitter-koba3.com/WordPress3/sitemap.xml
    Sitemap: https://petsitter-koba3.com/WordPress3/sitemap.rss

    のように サイトのURLにあわせてください。
    お使いのサイトでは、フォルダ以下の大文字小文字は区別されているためです。

    トピック投稿者 koba1023

    (@koba1023)

    kimipoohさん、回答有難う御座います。

    言われた通りに実行して見たのですが、エラーの変化は見られないです。
    どうしたら良いのか、分かりません。

    独自ドメインは3つあります。
    ファイル構成がややこしいからでしょうか?

    そのサイトについては、うまく置けていると思います。
    置いてすぐ解決するものではなく
    https://developers.google.com/search/docs/advanced/robots/submit-updated-robots-txt?hl=ja
    あたりを参考にrobots.txt を Googleに見つけてもらいやすくしておくのがよいだろうと思います。

    他のドメインがあるなら、それがどういうフォルダ構造で、どう関連性があるのか第三者に分かるように書いてもらわないと回答出来ません。基本的にはそれぞれのドメインごとに必要に応じて robots.txt を置くことになるでしょう。必要かどうかは、 WordPressの場合
    https://ドメイン/ : WordPressが自動的に /robots.txtを生成してくれる
    https://ドメイン/フォルダ/ : 自前で https://ドメイン/フォルダ/robots.txt に ファイルを置く必要がある

    ということになります。

    トピック投稿者 koba1023

    (@koba1023)

    kimipoohさん

    このサイトとは別に並行してロリポップサポートともやり取りを行っております。
    robots.txtファイルを独自ドメイン直下に設置していたのですが、ロリポップサポートから
    https://petsitter-koba3.com/WordPress3/robots.txtのrobots.txtにアクセスされたようです。

    すると、500 Internal Server Errorとなっていることを確認いたしました。

    500 Internal Server Errorの原因については、/.htaccess と /WordPress3/WordPress3/.htaccess の記述が影響して
    リダイレクトループが発生している為かと存じます。
    恐れ入りますが、/.htaccess と /WordPress3/WordPress3/.htaccess のリダイレクトに関する記述の見直しをお願いいたします。
    robos.txtでアクセスをどう制御したいのかが不明なため、どのように記述するとよいかはご案内いたしかねますが、
    一度以下のWordPressの.htaccessの基本形の記述にしていただき、そこから記述を追記するなどしてエラーが
    発生するかなどのご確認をお願いいたします。
    ーーーーーーーーーーーーーーーーーー
    # BEGIN WordPress
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    # END WordPress
    ーーーーーーーーーーーーーーーーーー`
    上記の内容にコードに変更したのですが、robots.txtテスターでは、500 Internal Server Errorが出ます。

    ロリポップサポートが言っている
    https://petsitter-koba3.com/WordPress3/robotstxtにアクセスするとは、URL欄に、そのまま入力することを言われていることなのですか?
    これを行うとrobots.txtファイルのコードが表示されます。
    ロリポップサポートが言っている/.htaccessのコードを変更する前の状態、変更後もrobots.txtファイルのコードは表示されエラーコードの表示は出ません。

    kimipoohさん、私はコードに関しては無知に近いです。
    ロリポップサポートが言っている事を教えて貰えないですか?

    宜しくお願い致します。

    質問が混在しているので整理します。

    今回の質問は、
    https://petsitter-koba3.com/WordPress3/
    のrobots.txt が存在しないことに関することでした。
    これについては、
    https://petsitter-koba3.com/WordPress3/robots.txt
    でアクセスできるようになっていますので、問題解決ということだと理解しています。

    それとは別の質問については、新規質問するほうがよいです。
    なお、これまでの状況を整理すると

    サーバーにアクセスしたフォルダ構成
    /
    /.htaccess: 使途不明(何故必要なのか?)
    /WordPress3/ : WordPressが入っており、https://petsitter-koba3.com/WordPress3 がURL
    /WordPress3/robots.txt 手動で作成し、https://petsitter-koba3.com/WordPress3/robots.txt でアクセス可能
    /WordPress3/.htaccess: /WordPress3/ 以下にいれた WordPress用の設定

    /WordPress3/.htaccess については素直に考えると
    # BEGIN WordPress
    RewriteEngine On
    RewriteBase /WordPress3/
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /WordPress3/index.php [L]
    # END WordPress

    /.htaccess には WordPress は入っていないので、
    # BEGIN WordPress

    # END WordPress
    までの記述は不要なはずです。

    ただし、サブフォルダにいれるためにしたことが不明瞭のため(事情があるとのことなので)、
    https://ja.wordpress.org/support/article/giving-wordpress-its-own-directory/
    にあるように、フォルダ構成も私が考えているものと違うかもしれません。

    また
    https://petsitter-koba3.com/robots.txt が必要な理由はわかりませんが
    リダイレクトループをするなら、一旦 /.htaccess を .htaccess-old などの名前変更して外してしまうのも手です。
    このあたりは、お使いのサーバーに WordPress をどのようにインストールしたのかによって変わってくるかなと思います。
    それをここの質問でやるには、質問内容から逸脱しすぎているので、新規質問をしてみてください。
    私も無責任にこれで大丈夫とはいえないので。

    投稿したらモデレータの承認待ちになってしまったので、あまりコード部分の詳しいことをかけないのかもしれません。
    そのためとりあえず回答すると次の通りです。

    今回の質問は、
    https://petsitter-koba3.com/WordPress3/
    のrobots.txt が存在しないことに関することでした。
    これについては、
    https://petsitter-koba3.com/WordPress3/robots.txt
    でアクセスできるようになっていますので、問題解決ということだと理解しています。

    それとは別の質問については、新規質問するほうがよいです。`

    トピック投稿者 koba1023

    (@koba1023)

    kimipoohさん

    robots.txt以外に色んなトラブルが発生して一時は、URLもロックされた状態になりました。
    そんな事を解決に至った時に、robots.txtもブロックされる状態からOKに認識される状態になっておりました。

    どうもありがとうございました。

11件の返信を表示中 - 1 - 11件目 (全11件中)
  • トピック「robots.txtファイルについて」には新たに返信することはできません。