Web-сайт Debian на разных языках


Разумеется, не все в мире используют один и тот же язык. С ростом web становится обычным попадание на страницы, доступные на нескольких языках. Поэтому введён стандарт под названием content negotiation — согласование содержания, который позволяет установить язык(и), на которых вы предпочитаете получать документы. Получаемая вами версия документа согласована между браузером и сервером; Ваш браузер посылает свои предпочтения и сервер решает, какую версию послать, на основе ваших предпочтений и доступных версий документов.

Учтите, что выбор другого языка (из списка доступных переводов, перечисленных внизу страницы) лишь покажет текущую страницу в этом языке. Это не изменит язык, используемый по умолчанию. Если вы нажмёте на ссылку на другую страницу, она вновь будет показана на оригинальном языке. Чтобы изменить ваш язык по умолчанию, вам нужно сменить ваши языковые свойства в настройках вашего браузера, как объяснено ниже.

Кроме того, вы можете найти дополнительную информацию о настройках выбора языка на странице W3C.


Что делать, если страницы отображаются не на том языке, который нужен.

Первая и наиболее распространённая причина того, что документ может быть получен с web-сервера Debian не на том языке, на котором нужен, это неправильная настройка браузера. Чтобы узнать, как это исправить, прочтите, пожалуйста, раздел "Как установить предпочтительный язык".

Вторая причина — неправильно работающий или неправильно настроенный кэширующий сервер. Эта проблема встречается все чаще, так как интернет-провайдеры видят в кэшировании средство уменьшения сетевого трафика. Прочтите ниже замечание о кэширующих серверах, даже если вы думаете, что не используете кэширующие сервера.

Третья возможная причина — это проблема с www.debian.org. Лишь несколько раз за последние годы проблемы с получением страниц на неправильном языке были с нашей стороны. Таким образом мы предлагаем в первую очередь проверить первые два варианта прежде, чем пытаться связаться с нами. Если вы обнаружите, что https://www.debian.org/ работает нормально, а не работает одно из зеркал - сообщите нам и мы сами свяжемся с сопровождающими этих зеркал.

После исправления любых проблем мы рекомендуем очистить кэш вашего браузера (как дисковый так и в памяти) прежде чем снова пытаться увидеть страницы. Мы также рекомендуем пользоваться для тестирования браузером lynx. Это единственный браузер, который на 100% соответствует спецификации HTTP по согласованию содержания.

Возможные проблемы с прокси-серверами

Прокси-серверы, это, в сущности, web-серверы, не имеющие собственного содержания. Они находятся между пользователями и реальными web-серверами. Они перехватывают ваши запросы на получение web-страниц и получают эти страницы. После этого они отправляют страницу вам, но кроме того, создают её локальную, кэшированную копию, для использования при последующих запросах. Это уменьшает сетевой трафик, когда много пользователей запрашивают одну и ту же страницу.

Как правило, использовать прокси удобно, но если кэш содержит ошибки, возникают неприятности. В частности, некоторые старые прокси-серверы не поддерживают согласование содержания. В результате этого, страница, сохранённая в кэше на одном языке, будет передана пользователю, даже если он запросил её на другом. Единственным решением является обновление или замена кэширующего ПО.

Раньше люди использовали прокси только тогда, когда они настраивали соответствующим образом свой браузер. Теперь это не так. Ваш провайдер может перенаправлять все http-запросы через прозрачный прокси. Если прокси-сервер не обрабатывает правильно согласование содержания, пользователи могут получать странице не на том языке, который им нужен. Единственный способ это исправить — попросить провайдера обновить или заменить программное обеспечение.


Как изменить настройки языка

Вы должны установить в качестве предпочтительных всех языки, на которых вы говорите, в порядке предпочтения. Стоит добавить английский язык ('en') в конец списка, поскольку изначально web-страницы Debian написаны по-английски, и на предпочтительный для вас язык (или языки) могут быть переведены не все документы.

Например, если вы носитель русского языка, вы можете установить соответствующую переменную так, чтобы первым шёл русский язык (код языка 'ru'), а за ним — английский (код языка 'en').

См. ниже подробные инструкции для конкретных браузеров.

Как вы можете видеть, большинство браузеров предоставляет какой-либо пользовательский интерфейс, скрывающий некоторые моменты задания предпочтительного языка. Если это не так, помните о том, что материал выше изложен несколько упрощённо. Если вы просто зададите список языков, например 'ru, en', вы не определите предпочтения, а присвоите этим вариантам равный ранг, и сервер может игнорировать их порядок. Если вы хотите определить приоритеты, следует использовать "значения предпочтительности" — вещественные значения в интервале от нуля до единицы. Большее значение означает большую предпочтительность. Таким образом, в вышеописанном случае, скорее всего, следует определить что-то вроде 'ru; q=1.0, en; q=0.5'.

Вам нужно обратить внимания на подкатегории языков. Например, 'ru-SU, en' будет делать не то, что ожидает большинство людей (если только они не читали спецификацию HTTP).

Мы настоятельно рекомендуем вам не дополнять коды языков расширениями, обозначающими страны, если на то нет серьёзной причины. Если вы добавили его, убедитесь, что включили также язык без этого расширения.

Объяснение: сервер, получивший запрос на документ с описанием предпочтительного языка 'ru-RU, en' не станет возвращать русскую ('ru') версию документа прежде, чем английскую. Он вернёт документ на русском языке прежде английского, только если существует версия файла с языковым расширением 'ru-ru'.

Итак, вам следует настроить свой браузер так, чтобы он отправлял 'ru-RU, ru, en' или просто 'ru, en'. Хотя последний вариант функционирует по-другому, если запрошено 'ru', сервер может вернуть 'ru-ru'.

Более подробную информацию об установке переменной предпочтительных языков см. документацию Apache по согласованию содержания.

Установка предпочтительного языка в браузере

Чтобы установить язык по-умолчанию для Вашего браузера, Вам следует установить переменную, которая будет послана на web-сервер. Как это делается, зависит от используемого Вами браузера.

Chrome and Chromium
Customize and control Chromium -> Settings -> Show advanced settings -> Languages -> Language and input settings
ELinks
Вы можете настроить язык интерфейса по умолчанию следующим образом:
     Setup -> Language
  
Также это изменяет язык запрашиваемых с веб-сайтов страниц. Можно изменить это поведение и выбрать допустимые языки переменной HTTP следующим образом:
     Setup -> Options manager -> Protocols -> HTTP
  
Epiphany
     Edit -> Preferences -> Language -> Languages
  
Firefox
Версия 3.0 и более поздние:
Linux:
     Edit -> Preferences -> General -> Languages -> Choose...
  
Windows:
     Tools -> Options -> General -> Languages -> Choose...
  
Mac OS:
     Firefox -> Preferences -> Content -> Languages -> Choose...
  

Версия 1.5 и более поздние:
Linux:
     Edit -> Preferences -> Advanced -> General -> Edit Languages
  
Windows:
     Tools -> Options -> Advanced -> General -> Edit Languages
  

Версия 0.9 и более поздние:
Linux:
     Edit -> Preferences -> General -> Languages
  
Windows:
     Tools -> Options -> General -> Languages
  
В более старых версиях нужно открыть страницу about:config и изменить значение intl.accept_languages.
Galeon
     Settings -> Preferences -> Rendering -> Languages
  
IBrowse
Перейдите в Preferences, затем в Settings, затем в Network. Под "Accept language" скорее всего по умолчанию указано "*". Если вы нажмёте на кнопку "Locale", с её помощью вы можете добавить нужный вам язык. Если это не помогает, введите язык вручную. После этого нажмите "OK".
iCab
     Edit -> Preferences -> Browser -> Fonts, Languages
  
Iceweasel
     Edit -> Preferences -> Content -> Languages -> Choose
  
Internet Explorer
Windows:
     Tools или View или Extras -> Internet Options -> (General) Languages
  
Mac OS:
     Edit -> Preferences -> Web Browser -> Language/Fonts
  
Konqueror
Отредактируйте файл ~/.kde/share/config/kio_httprc, включив в него такую строку:
     Languages=ru;q=1.0, en;q=0.5
  
Lynx
Вы можете либо отредактировать переменную preferred_language в Вашем .lynxrc или установить её командой 'O' внутри lynx.

Например, в .lynxrc можно использовать следующую строку:

     preferred_language=ru; q=1.0, en; q=0.5
  
Mozilla / Netscape 4.x или более поздней версии
     Edit -> Preferences -> Navigator -> Languages
  
Внимание: с Netscape 4.x вам потребуется убедиться, что вы выбрали язык из списка доступных языков. Некоторые сообщали о проблемах из-за того, что ввели язык вручную.
Netscape 3.x
Добавьте
     *httpAcceptLanguage: [preferred_language string]
  
в файл app-defaults Netscape или ~/.Xresources
Opera
Большинство версий:
     File -> Preferences -> Languages
  
Linux/*BSD версий 5.x и 6.x:
     File -> Preferences -> Document -> Languages
  
Веб-браузер Nokia 770: Отредактируйте файл /home/user/.opera/opera.ini, добавив в него следующую строку в раздел [Adv User Prefs]:
     HTTP Accept Language=fr;q=1.0,en;q=0.5
  
Pocket Internet Explorer
     Создайте ключ регистра строкового типа AcceptLanguage в
     HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\International\
     со значением fr; q=1.0, en; q=0.5 (без кавычек).
  
Safari
Safari использует системные настройки Mac OS X для определения предпочтительного языка:
     System preferences -> International -> Language
  
Voyager
Перейдите в Settings, затем в Languages. Можно либо ввесли язык вручную, либо нажать на "Get from locale". После завершения нажмите "OK".
W3 (веб-браузер на основе Emacs)
(setq url-mime-language-string  "preferred_language=fr; q=1.0, en; q=0.5")
или используйте специальный пакет (URL для версии p4.0pre.14):
Hypermedia -> URL -> Mime -> Mime Language String...
W3M
     Options (o) -> Other Behavior -> Accept-Language
  

Если у вас есть информацию о настройке браузера, не упомянутого выше, пожалуйста, сообщите об этом по адресу debian-www@lists.debian.org.