この奇妙な問題があり、私は何が起こっているのだろうと思い続けています。特異性がないことをおaびしますが、厳密なNDAポリシーを順守する必要があります。だからここに私の質問があります:
ウェブサイトのもう存在しないサブドメインにアクセスするときに発生しているリダイレクトのソースを特定する方法はありますか私が管理していますか?
基本的に、http://oldsubdomain.example.com
はhttp://example.com
にリダイレクトされます。さらに、このリダイレクトのために、Googleは(Search Consoleを介して)検索データベースから削除することを許可していません。
サブドメイン(以前は多年前に存在していた)が数年前のある時点で削除されて以来使用されていないという事実にもかかわらず、Googleはまだそれをキャッシュしているようです。ただし、titleおよび検索結果スニペットのdescriptionは、メインドメイン名の結果と同じです。つまり、 http://oldsubdomain.example.com
をグーグル検索すると、http://example.com
を検索したときとまったく同じ結果が得られます。
はい、検索しましたが、.htaccess
でそのようなリダイレクトを引き起こす可能性のあるディレクティブを見つけることができませんでした。また、サブドメインが存在しないことを確認しました。 Cloudflareの廃止されたサブドメインに関連するDNSレコードなしもあります。
まとめると、リダイレクトの原因を正確に確認するにはどうすればよいですか? http://oldsubdomain.example.com
検索結果を削除するようGoogleに依頼できるように、無効にするだけです。
いずれにしても、.htaccessディレクティブを使用して
http://oldsubdomain.example.com
へのアクセスを拒否しようとしました。RewriteRule ^oldsubdomain.example.com - [F]
驚いたことに、何らかの理由でディレクティブは無視されます。うまくいかない理由は、今でも私を困惑させています。 「機能しない」とは、ディレクティブが存在しないかのように、リダイレクトがまだ発生することを意味します。
RewriteRule
patternはURLパスのみと一致し、Hostとは一致しません。ホストに一致させるには、RewriteCond
ディレクティブを使用し、HTTP_Host
サーバー変数と照合する必要があります。
例えば:
RewriteCond %{HTTP_Host} ^oldsubdomain\. [NC]
RewriteRule ^ - [F]
ただし、これをGoogleから削除するには、「403 Forbidden」ではなく「410 Gone」を返すことをお勧めします。その場合、RewriteRule
flagsで[F]
を[G]
に変更するだけです。
基本的に、ルートドメインを指すDNSベースの
*.example.com
ワイルドカードリダイレクトディレクティブがあります。
このワイルドカードサブドメインを認識していないように見えたので、実際に使用していますか? anything.example.com
にリンクしてリダイレクトできますか?
DNS設定でのワイルドカードサブドメインリダイレクトなどの重要なことを見落とさないように、この質問beforeをおかけしたことをおforびしなければなりません!そして、私はCloudflareのDNSではなく、ホスティングのDNSについて話している。
これですべてが明確になりました。基本的に、ルートドメインを指すDNSベースの*.example.com
ワイルドカードリダイレクトディレクティブがあります。したがって、oldsubdomain(またはany他のものへのリクエスト)問題)ホームページに転送されます。
いずれにしても、.htaccessディレクティブを使用して http://oldsubdomain.example.com へのアクセスを拒否しようとしました。
RewriteRule ^oldsubdomain.example.com - [F]
驚いたことに、何らかの理由でディレクティブは無視されます。うまくいかない理由は、今でも私を困惑させています。 「機能しない」とは、ディレクティブが存在しないかのように、リダイレクトがまだ発生することを意味します。
今では、DNSサブカードから特にoldsubdomainを除外する方法を知っていれば、再作成せずにアクセスを拒否できます。
何か案は? :)
特定のA-type DNSレコード、つまりoldsubdomain.example.com
を追加することでホスティングプロバイダーに助けを求めることになりましたが、ウェブサイトがCloudflareのサービスを使用しているという事実を考慮して、彼らは責任を拒否しました。ホスティング担当者の応答に基づいて、CloudflareのDNSセクション内に新しいAタイプのDNSレコードを作成しました。これはnull .0.0. IPアドレスを指し、潜在的なHTTPを引き起こしますoldsubdomain.example.com
へのリクエストはすぐに失敗します。特に、存在しないoldsubdomain
はWebサイトにまったく役に立たないためです。
私のアプローチが最初の問題に対する最良の長期的な解決策であるかどうかはわかりませんが、少なくとも完全に機能します-Google Search ConsoleでURL削除リクエストを正常に実行できたため、問題を引き起こします。
有益な情報をありがとうございました!