私は多言語ウェブサイトを持っています。コンテンツの言語は、URL を介して定義されます。
www.example.com/en_gb/content/right/here/
コンテンツが他の言語でも利用できることを検索エンジンが確実に理解できるようにするために、ページの代替リンクを使用します<head/>
。
<link href="http://www.example.com/en_au/content/right/here/" hreflang="en-AU" rel="alternate">
<link href="http://www.example.com/fr_be/content/right/here/" hreflang="fr-BE" rel="alternate">
<link href="http://www.example.com/nl_be/content/right/here/" hreflang="nl-BE" rel="alternate">
<link href="http://www.example.com/en_ca/content/right/here/" hreflang="en-CA" rel="alternate">
<link href="http://www.example.com/fr_ca/content/right/here/" hreflang="fr-CA" rel="alternate">
ここで私の質問: 誰かが有効なロケール (通常、私の Web サイトでサポートされているローカル) でページを要求したが、現在のページがそのロケールで利用できない場合はどうすればよいですか?
現在、「このコンテンツはあなたの国では利用できません」というページに書き込み、HTTP ステータス コード 404 Not Foundで応答して、検索エンジンがこのページをインデックスしないようにしています。
HTTP ステータス コード 406 Not Acceptableを利用して、検索エンジンがこのページが他の言語でも利用できることをよりよく理解できるようにすることはできますか? そのステータスコードは適切でしょうか? もしそうなら、ユーザーにページを表示すると同時に代替リンクで応答するにはどうすればよいでしょうか? これはRFCが言うことです:
HEAD リクエストでない限り、レスポンスには、ユーザーまたはユーザー エージェントが最も適切なものを選択できる、利用可能なエンティティの特性と場所のリストを含むエンティティを含める必要があります (SHOULD)。
ありがとう!