HTTPQUERY
日本語

Content-Language

使い方

Content-Language ヘッダーが示すのはリソースの想定読者であり、必ずしもリソースが書かれている言語ではありません。英語話者の読者向けに配信されるフランス語のテキスト抜粋は、コンテンツ言語として en を持ちます。文字どおりのテキストの言語よりも、読者のコンテキストのほうが重要だからです。

サーバーはコンテンツネゴシエーションと併せてこのヘッダーを使い、適切な言語バリアントを配信します。クライアントが優先する言語を列挙した Accept-Language リクエストヘッダーを送ると、サーバーは最適な一致を選択し、その選択を Content-Language で伝えます。

複数の言語タグはカンマで区切ります。各タグは BCP 47 形式に従い、主要言語サブタグに任意の地域サブタグや文字体系サブタグを組み合わせます。

単一の言語タグ

単一の BCP 47 タグは、1 つの言語と、任意で 1 つの地域を識別します。一般的な例としては en、en-US、de-DE、zh-Hans-CN があります。

複数の言語タグ

カンマ区切りのリストは、複数の言語の話者を対象としたコンテンツであることを示します。順序は優先度を意味しません。

Content-Language: en, fr

例

サーバーがオーストラリア英語の読者向けのページを返します。言語タグ en-AU は、主要言語が英語で地域バリアントがオーストラリアであることを示します。

Content-Language: en-AU

ドイツ語とフランス語の両方の読者を対象としたバイリンガル文書では、両方の言語タグを列挙します。

Content-Language: de, fr

コンテンツネゴシエーションを行うサーバーが、クライアントのリクエストに基づいてスペイン語のバリアントを選択します。レスポンスがその選択を伝えます。

Accept-Language: es, en;q=0.8
Content-Language: es

SEO と Content-Language

Content-Language は(HTTP ヘッダーとしても HTML の meta タグとしても)Bing にとって主要な言語シグナルであり、Bing はロケールごとのバリアントをランク付けする際、Hreflang よりも Content-Language を重視します。Google はアルゴリズムによる言語検出に依存しており、Content-Language は弱いヒントとして扱います。Bing を対象とする国際的なサイトでは、Content-Language を設定するほうが hreflang 単独よりも効果があります。