Ошибки bingbot/msnbot
Четверг, 18 октября 2012

Как же я люблю Microsoft. Вот, например, есть у них поисковик Bing (им, кстати, кто-нибудь пользуется?). Авторы crawler’ов для этого поисковика совершенно не умеют работать с UTF-8. Почему-то только они присылают запросы с неверно закодированными кириллическими буквами.

Пример. Есть страница «работа» :: [dikmax’s blog]. Везде в ссылках на эту страницу у меня написано <a href=”/tag/работа”>.

Какую страницу запрашивают все браузеры и поисковики: /tag/%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0. А что же пытается получить msnbot: /tag/%D1%E2%82%AC%D0%B0%D0%B1%D0%BE%D1%E2%80%9A%D0%B0.

            D1                (incomplete sequence)
U-000020AC  E2 82 AC         
U-00000430  D0 B0            
U-00000431  D0 B1            
U-0000043E  D0 BE            
            D1                (incomplete sequence)
U-0000201A  E2 80 9A         
U-00000430  D0 B0            

Я не представляю, какое преобразование нужно было сделать, чтобы получить такую последовательность байт.

Решение понятно, нужно кодировать ссылки на стороне сервера. Но зачем, если и так всё работает? А Bing — не тот поисковик, под который стоит подстраиваться. Хотя когда-нибудь я поправлю и это.

← Скоро!jQuery.Deferred →