サポート » 使い方全般 » wp-adminディレクトリ以下のファイルをGoogleにインデックスされないようにしたい

  • 解決済 echizenya

    (@echizenya)


    いつもお世話になっております。
    下記の質問についてご存知の方がいらっしゃいましたら、ご教示を願います。

    【質問の主旨】

    https://e-yota.com/wp-admin/themes.php

    上記URLのページにmetaタグのnoindexプロパティをつけて、
    Googleにインデックスされないようにするためにはどうすれば良いでしょうか?

    【質問の補足】

    1.
    先日、Google Search ConsoleからGmailが届き、詳細を確認すると下記の画面に遷移しました。

    2.
    自分のブログサイトにおいて、wp-adminディレクトリに属するファイルは原則的にGoogleの検索ロボットがインデックスすることを禁止にしています。

    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php
    Allow: /wp-admin/images/w-logo-blue.png
    
    Sitemap: https://e-yota.com/sitemap.xml

    ただし、robots.txtファイル(wp-adminディレクトリと同じ階層に配置)において、2つのファイルについては、indexすることを許可しています。

    3.
    ブログサイトにログインしていない人が冒頭のURLにアクセスすると、「閲覧できません (Forbidden access)」というページが表示されます。これはブログサイトをおいている「さくらのVPS」でSiteGuard Liteをインストールしているためです。

    以上、ご確認よろしくお願いします。

    • このトピックは1 年、 2 ヶ月前に  echizenya さんが編集しました。理由: 質問の本文で記述したrobots.txtの内容に誤りがあったため編集しました。

    ヘルプの必要なページ: [リンクを見るにはログイン]

12件の返信を表示中 - 1 - 12件目 (全12件中)
  • こんにちは

    SiteGuard Lite というものを使用したことがないので詳しいことはわかりませんが・・・、
    Apache の設定の “ErrorDocument 403” でページを指定してみてはどうでしょうか?

    @ishitaka さん。
    いつもコメントありがとうございます。

    Apache の設定の “ErrorDocument 403” でページを指定してみてはどうでしょうか?

    Qiitaの記事Apacheの公式ページを参考にして.htaccessに
    “ErrorDocument 403 /wp-admin/themes.php”と書き込みを行いました。WordPressにログインしていない人が、”https://e-yota.com/wp-admin/themes.php”にアクセスすると
    “https://e-yota.com/wp-login.php”の画面にリダイレクトされ、403ページは表示されなくなりました。

    今後ともどうぞよろしくお願いします。

    “ErrorDocument 403 /wp-admin/themes.php” と書き込みを行いました。

    HTTP 403 は /wp-admin/themes.php 以外でも生じるので、/wp-admin/themes.php ではなくエラーページ (403.html や 404.php など) を指定したほうがいいかと思いますが・・・。

    @ishitaka さん
    追加のコメントありがとうございます。

    >/wp-admin/themes.php ではなくエラーページ (403.html や 404.php など) を指定したほうがいいかと思いますが・・・。

    ということは、”ErrorDocument 403 /wp-admin/themes.php” よりも
    “https://e-yota.com/wp-admin/themes.php にアクセスしたら、https://e-yota.com/404.phpにリダイレクトせよ”といった命令を.htaccessに書き込む方が良いということでしょうか?

    下記ページの「さらなるエラーコード処理」セクションが参考になると思います。
    https://wpdocs.osdn.jp/404エラーページの作成

    ちなみに私は、403(アクセス拒否)、404(存在不明)および 500(Internal Server Error)も面倒なのでまとめて同じ静的 HTML(error.html)を指定することがおおいです。

    @ishitaka さん。
    たびたびのコメントありがとうございます。

    下記ページの「さらなるエラーコード処理」セクションが参考になると思います。

    Codexに基づいて.htaccessを書き直して見ました。

    # ErrorDocument 403 /wp-admin/themes.php
    ErrorDocument 404 /wp-admin/themes.php?error=404

    ただ/wp-admin/themes.phpを404に指定したものの、「閲覧できません(Forbidden access) Powered by SiteGuardLite」の画面が表示されます。後日別の質問として「/wp-admin/themes.phpを404.phpにリダイレクトさせる方法」について質問を投稿しようと思いますが、いかがでしょうか?

    • この返信は1 年、 2 ヶ月前に  echizenya さんが編集しました。理由: タグが間違っていたので編集しました

    ErrorDocument の URL (document) はリダイレクト先ですよ。

    ErrorDocument 404 /wp-admin/themes.php?error=404

    では、404 エラーが発生したときに、/wp-admin/themes.php?error=404 へリダイレクトされてしまいます。

    @ishitaka さん。たびたびのアドバイスありがとうございます。

    # ErrorDocument 403 /wp-admin/themes.php
    # ErrorDocument 404 /wp-admin/themes.php?error=404
    Redirect permanent /wp-admin/themes.php /404.php

    .htaccessを上記のような記述に変更しました。
    “https://e-yota.com/wp-admin/themes.php”にアクセスすると、WordPressにログインしているかどうかに関わらず、全ての人が”https://e-yota.com/404.php”にリダイレクトされるようになりました。

    こんな感じでしょうか?

    • この返信は1 年、 2 ヶ月前に  echizenya さんが編集しました。

    /wp-admin/themes.php をリダイレクトしては、管理画面のテーマページが表示できなくなってしまいます。

    おそらく、/wp-admin/themes.php のアクセスは SiteGuard Lite によって 403 エラーとなるので、下記のような感じではどうでしょうか。

    例:

    ErrorDocument 403 /index.php?error=404
    ErrorDocument 404 /index.php?error=404

    @ishitaka さん。
    コメントありがとうございます。

    # ErrorDocument 403 /wp-admin/themes.php
    # ErrorDocument 404 /wp-admin/themes.php?error=404
    # Redirect permanent /wp-admin/themes.php /404.php
    ErrorDocument 403 /index.php?error=404
    ErrorDocument 404 /index.php?error=404

    .htaccessの記述を上記の通り変更しました。
    前回のコメント通り、“https://e-yota.com/wp-admin/themes.php”にアクセスすると、WordPressにログインしているかどうかに関わらず、全ての人が”https://e-yota.com/404.php”にリダイレクトされるようになりました。

    ただ、これらの記述で前者は後者にリダイレクトされるのかよく分りません。差し支えなければリダイレクトされる理由を教えていただければと幸いです。いかがでしょうか?

    /wp-admin/themes.php のアクセスは SiteGuard Lite によって 403 エラーとなります(たぶん)。
    ErrorDocument はエラーが発生したとき(403 エラーなど)に、指定の URL へリダイレクさせる(など)の動作をします。
    詳細は下記ページをご覧ください。
    https://httpd.apache.org/docs/2.4/ja/mod/core.html#errordocument

    @ishitaka さん。
    たびたびのコメントありがとうございます。
    Apacheの公式ドキュメントと合わせて参考にさせていただきます。
    親身なアドバイスとても助かりました。

12件の返信を表示中 - 1 - 12件目 (全12件中)
  • トピック「wp-adminディレクトリ以下のファイルをGoogleにインデックスされないようにしたい」には新たに返信することはできません。