Итак, сегодня хотела написать немного об использовании кириллицы в ЧПУ. На мой взгляд русскоязычные ссылки были бы очень хороши, если бы не... Ходят слухи что они не доступны браузерам, поисковикам и другим системам, а в адресной строке браузера отображается что-то совершенно ужасное. Вот о всех плюсах, минусах, слухах и реализации на сайтах я бы и хотела рассказать.
Итак, пример того как можно использовать русский язык в URL можно увидеть прямо в адресной строке вашего браузера. Там должно быть написано следующее:
http://usabili.ru/news/2009/09/08/Русский_язык_в_URL.html
Заглянем что говорит по этому поводу официальная спецификация HTML 4.01:
B.2.1 Non-ASCII characters in URI attribute values Although URIs do not contain non-ASCII values authors sometimes specify them in attribute values expecting URIs (i.e., defined with %URI; in the DTD). For instance, the following href value is illegal: <A href="http://foo.org/Håkon">...</A> We recommend that user agents adopt the following convention for handling non-ASCII characters in such cases: - Represent each character in UTF-8 (see [RFC2279]) as one or more bytes. - Escape these bytes with the URI escaping mechanism (i.e., by converting each byte to %HH, where HH is the hexadecimal notation of the byte value). This procedure results in a syntactically legal URI (as defined in [RFC1738], section 2.2 or [RFC2141], section 2) that is independent of the character encoding to which the HTML document carrying the URI may have been transcoded.
Что примерно означает следующее:
Хотя URL (есть разница между URL и URI, но тут она не важна), дожен содержать только латинские (ASCII) символы, бывает что авторы вставляют их в значение ссылок. Например в следующем примере значение атрибута href неправомерно: <A href="http://vasya.ru/Вася_Пупкин">...</A> Рекомендуем браузерам сделать следующее: - Заменить каждый символ кодировкой urf-8 - Кодировать эти символы побайтно экранированием url, т.е. шеснадцатиричными значениями (каждый байт будет %HH). В итоге ваш URL будет синтаксически верен.
Следуя рекомендациям экранируем нашу ссылку, мы получим примерно следующее.
http://usabili.ru/news/2009/09/08/%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA_%D0%B2_URL.html
Отметим особо, что ссылка у нас получилась в (экранированной) кодировке UTF-8, и её длинна соответственно возрасла. Вебмастера чьи сайты используют в качестве основной кодировки win-1251 (как например этот сайт) должны обрабатывать имя ссылок особо, например можно перевести её в нужную вам кодировку.
Зайдём по ссылке браузером, и вуаля, он нам показывает чистый русский язык.
В IE8 к сожалению чистый русский язык будет только если там адрес вбивать вручную. Но, таков уж IE =).
В яндексе русский язык в url прекрасно понимают, и даже используют для поиска.
Гугл словам в ссылках значения не даёт, кроме того, слова соединённые через подчёркивание считаются с его точки зрения одним, для разделителей лучше использовать минус (дефис). Этот факт горячо обсуждался на xpoint.ru. Однако правильно сформированные русскоязычные ссылки он тоже отображает.
Теперь время для небольшого интервью, я опросила коллег на эту тему:
твоё мнение о использовании русского языка в url? если например ссылка в utf-8?
Jelu (программист): ну кракозябра сверху) вообще считаю что это плохо
давно хотела спросить кое что про оптимизацию. Как влияет на оптимизацию русский язык в url? @ (оптимизатор): не знаю что даже и ответить, думаю что зависит от того что ты хочешь получить в результате, т.е. для чего делается эта ссылка. но думаю что большого траста она не придаст, а смысл передается анкором, думаю что русский язык тут не причем. @: я не знаю как конкретно поисковик относится к ссылкам на русском языке. ну если говорить в общем о том как она влияет, я склонен думать что никак. На релевантность влияет текст на странице, но никак не ссылающийся на нее урл.
привет. твоё мнение о использовании русского языка в url? ov3r (программист): привет. отрицательно, хотя бы из-за различных кодировок
твоё мнение о использовании русского языка в url? Джехи (программист): только что обнаружил, что бл***ая сапа обрезает урлы длиннее 255 символов, что меня огорчило. поскольку у меня урленкод на > 255 сиволов от русского языка. с**и пи***ы. в остальном длинные русские урлы красивы, приятны, удобны, всеми понимаются и повышают релеванстность.
твоё мнение о использовании русского языка в url? Dark Lord (программист): шняга!
Резюме: Поддержка русского языка в ссылках на уже хорошем уровне есть. Однако многие вебмастера пока не видят смысла в её использовании. Теоритически возможно использование ключевых слов в урл для вывода страницы в яндекс.
Комментарии:
Ярослав
12.02.2011 16:58:53
Елена Лунная
13.02.2011 04:22:59
Ярослав
13.02.2011 10:20:06
Bars (Денис Борзенко)
12.04.2011 09:08:32
Елена Лунная
12.04.2011 10:43:20
Bars (Денис Борзенко)
12.04.2011 12:46:29
Spartak
14.09.2011 10:00:09
Spartak
14.09.2011 12:32:19
Spartak
14.09.2011 14:20:26
Елена Лунная
14.09.2011 15:57:31
Spartak
14.09.2011 16:40:40
FrolovS
22.12.2012 14:45:23
Влад
16.01.2013 10:59:08
Пупкин
29.01.2013 21:48:27
Елена Лунная
20.02.2013 00:41:35
popov654 (popov654)
25.12.2013 14:53:31
Елена Лунная
26.12.2013 12:38:28