У меня многоязычный сайт. Язык контента определяется через URL:
www.example.com/en_gb/content/right/здесь/
Чтобы убедиться, что поисковые системы понимают, что контент также доступен на других языках, я использую альтернативные ссылки на моей странице <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">
Теперь мой вопрос: что мне делать, если кто-то запрашивает страницу с допустимой локалью (местной, которая обычно поддерживается моим веб-сайтом), но текущая страница недоступна для этой локали?
В настоящее время я пишу на страницу «Этот контент недоступен для вашей страны» и отвечаю Код статуса HTTP 404 Not Found, чтобы поисковые системы не индексировали эту страницу.
Могу ли я также использовать код состояния HTTP 406 Not Acceptable чтобы убедиться, что поисковые системы еще лучше понимают, что эта страница также доступна на других языках? Будет ли этот код состояния вообще подходящим? Если да, то как бы я ответил альтернативными ссылками, в то же время показывая страницу своим пользователям? Вот что говорит RFC:
Если это не был запрос HEAD, ответ ДОЛЖЕН включать объект, содержащий список доступных характеристик объекта и местоположения, из которых пользователь или пользовательский агент может выбрать наиболее подходящий.
Спасибо!