いくつかの言語の翻訳ミドルウェアを有効にしたDjangoウェブサイトがあります。
ユーザーが開こうとした場合
example.com/abc
これが起こります:
ミドルウェアはユーザー言語を検出し(Cookie、ブラウザ、フォールバックから)、つまりリダイレクトします.
example.com/en/abc
ミドルウェアはこのページが存在しないことを検出し、404を送信します
これらの存在しないページの場合、最初に301が表示され、次に404が表示されます。このリダイレクトは、SEOランキングを低下させますか?
他の答えは、ここで尋ねられている特定の質問を見逃しているようです。はい、言語の自動リダイレクトは、Stephenの回答で指摘された有効なポイントのSEOにとって問題になる可能性があります。
ただし、OPは404へのリダイレクトが悪いかどうかを尋ねているように見えます。言語のリダイレクトは、このリダイレクトが最初に発生する理由を説明するほんの少しの背景です。
これらの存在しないページ最初に301、次に404があります。このリダイレクトは私のSEOランキングを傷つけますか?
@closetnocがコメントで指摘したように、404をすぐに配信するか、404にリダイレクトするかにかかわらず、インデックスを作成するものはまだありません。いずれにせよ、最終的には404です。したがって、リダイレクト自体はおそらく少し余分な作業ですが、SEOランキングを「傷つける」ことはありません。 (SEOは実際には入りません。)
言語のリダイレクトと動的な言語の決定は、一般にSEOにとって悪いことです。 SEOの場合、言語はURLに基づいてsolelyを選択する必要があります。ブラウザの言語設定(accept-language
ヘッダー)またはIPアドレスの場所に基づいてリダイレクトしないでください。 Cookieリダイレクトは、言語設定を肯定的に表明したユーザーにとっては問題ありません。
英語のページ(example.com/en/abc
など)は、他の英語のページ(example.com/en/def
など)に直接リンクする必要があります。適切な言語に到達するためにリダイレクトが必要なURLにリンクしないでください。
これにはいくつかの理由があります。
accept-language
ヘッダーを送信しませんaccept-language
ヘッダーは、デフォルトであるため、多くの場合、en-US
に誤って設定されます。SEOがブラウザ言語とgeo IPを使用してページの上部近くにメッセージを配置しても問題ありません。何かのようなもの:
英語ブラウザを使用して米国にいるようです。ここをクリックして英語のウェブサイトに移動してください。
人々があなたのソースにリンクし、URL、wwwおよびhttpsの最後に/
スラッシュを付けるのを忘れた多くの状況があるので、それはSEOで傷つきません。したがって、サーバーはすでにデフォルトでそれらをリダイレクトするかもしれませんこの
http://www.example.com/source redirect to www.example.com/source/
http://example.com/source/ redirect to https://example.com/source/
example.com/source/ will redirect to www.example.com/source/
将来的にはソースファイルが削除される可能性がありますが、すべてのユーザーとcralwer/spiderは最初に301リダイレクト、次に404エラーが表示されるため、多くの状況で一般的であるため、SEOで問題はないと述べました。
ただし、スティーブンが言ったように、Googleが適切なページにアクセスできない可能性があるため、記事をこのようにリンクしないでくださいexample.com/abc。そのため、すべてのexample.com/en/abcからexample.com/en/sourceのみ。
Googleフェッチおよびレンダリングツールを使用して、Googleがリダイレクトをどのように表示するかを確認します。