Живой пример, Google теперь сканирует Ajax


    Задумал переделать на сайте навигационное меню изобилующее ссылками в разные разделы и сделать менее «спамное» для поисковых систем и более удобное для посетителей. Идея была проста.

    • с главной страницы все ссылки на разделы сайта на HTML
    • ссылки в меню из разделов только на тематические разделы
    • остальные ссылки на нетематические разделы сделать на JavaScript в отдельном файле


    Опущу подробности реализации сей задумки, но получилось весьма недурно, всё нравится.
    И вдруг заметил резкое падение трафика с Google. Что? Как? Почему?
    image
    image
    Вроде наоборот хотел как лучше сделать, направить поисковые системы по правильному пути, но оказывается не всё так гладко.

    С недавнего времени Google стал сканировать и индексировать AJAX сайты!
    Кажется ничего нового никто и не услышал, но они просто в очередной раз всех переплюнули.
    Всё очень просто.
    1. Сайт поддерживает схему сканирования AJAX.
    2. Сервер выдает снимок HTML для каждого URL AJAX, который виден пользователю (через браузер). URL AJAX содержит хэш-фрагмент, например example.com/index.html#mystate, где #mystate – хэш-фрагмент. Снимок HTML – это все содержание, отображаемое на странице после выполняемого кода JavaScript.
    3. Поисковые системы индексируют снимок HTML и обслуживают исходные URL AJAX в своих результатах поиска.

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

    Живой пример, источник по сабжу.

    Similar posts

    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 33

      0
      как думаете выходить из ситуации?
        0
        пока закрою в robots.txt файл с меню, дальше посмотрим
          0
          может изменить подход… например просто передавать данные в виде объекта потом их шаблоном вставлять и JavaScript ссылочки «забиндить» на onClick а не органическим href?
            0
            как вариант да, но и код тогда увеличится
            пока рассматриваю вариант в файле с меню кодировать ссылки в base64
              0
              может вообще JSON отдавать… но это тонкости… тут главное что бы псевдо органических ссылок не давать на индекс…
                0
                либо SpecialForGoogle rel='nofollow'
                  0
                  … в официальной доке гугла рецепт
                  robots.txt:
                  Disallow: / * _escaped_fragment_

                  Правильным путем идете, товарищ!
          +2
          Гугл давно уже это придумал.
            0
            вполне возможно, что давно, но статья в источнике обновлена недавно
            0
            Не пробовали использовать HTML5 History API? Чтобы «путь» выглядел у пользователя не как хеш, а как полноценный адрес. Вместо «example.com/#/user/» будет «example.com/user/». Если есть HTML-версия сайта, в ней эта страница будет иметь тот же адрес, что и в Ajax-версии, что удобно пользователям, в частности, для закладок. Возможно, и гуглу это больше понравится.
              +1
              всё бы хорошо, но тут появляется на горизонте «всеми любимый браузер», который не очень хорошо знаком с аяксом и что такое window.history.pushState ((( да и знаний если честно не хватает.
                0
                Ну про всеми любимый браузер давно пора уже позабыть и юзать обычный переход. Ну или на крайняк юзать HTML5-History-API специально сделанное для таких браузеров)
                  0
                  Так в 10-ом IE вполне работает HTML5 History API, а для прошлых версий можно простой переход использовать. Сам такое использую уже давно и вполне устраивает. Старых версий с каждым днем все меньше и меньше, так что не вижу смысла делать очередной костыль.
                    0
                    зачастую та часть публики которая пользуется нормальными браузерами не интересуется такой специфической продукцией, какая предоставлена на сайте, а те кто интересуются, ещё не в курсе, что есть нормальные браузеры.

                    Условно: бывает с десяток людей заказавших на 100 рублей, и один на 100 тыс., но через свой старенький пентиум 4 и с монитором 15 дюймов, причём заказывал оборудование устаревшее ещё 4 года назад.
                      0
                      Ну некоторые например не по своей воле сидят на недобраузерах, это касается некоторых контор, где админам просто лень обновить браузер или поставить другой.
                      0
                      Спору нет, но если костыль простой, то почему бы и не поюзать. Одно дело если костыль заставляет попотеть, а другое дело если и потеть не надо.
                        0
                        В большинстве случаев проблема заключается в том, что при добавлении очередного функционала нужно не забывать про все те костыли, что были добавленны ранее. Это личные наблюдения и не более того. Просто изначально люди привыкли переходить по ссылкам с перезагрузкой всей страницы и, если для кого-то станет лучше, если будет перезагружаться часть страницы, то для остальных ничего и не изменится.
                          0
                          Ну дык нужно костыли добавлять так что бы потом с ними не мучатся.
                    0
                    есть либы которые добавляют такую поддержку и ему тоже.
                  –1
                  отголосок броблея я вижу в этом посте
                    0
                    а как Яша на это смотрит? просел траф с Яндекса?
                      0
                      Яша—красавчик, всё правильно сделал, траф поднял, позиции подтянул.
                        +4
                        Красавчик в этой ситуации Гоша… спалил ваши мансы… не в обиду…
                        Для пользователя старался…
                          0
                          Угу… Поэтому он плюет ВСЕГДА на robots.txt?
                    +2
                    Давно уже выполняет JS. Года два минимум.
                      +1
                      Наконец-то половина конкурентов-мусорщиков-ссылкопродажников вымрет :)

                      Как честного прогера меня всегда бесило то, что «SEO-оптимизаторы» (не те, что реально роются в семантике шаблонов) выкручивают из своих говно-сайтиков поболе чем хорошие user-friendly порталы…
                        0
                        А почему вы не хотите просто прописать rel=«canonical» для хеш страниц.?
                          0
                          canonical на всех страницах есть
                          0
                          тогда он не должен их использовать
                            0
                            кто вам сказал что должен?
                            canonical это лишь правило для поисковой машины, которое оно может изменить по своему усмотрению и сделать так ка считает нужным:)
                              0
                              просто у меня в трех проектах такая проблема и везде все нормально сработало
                            0
                            А причём здесь картинка из Brablay O_O

                            Only users with full accounts can post comments. Log in, please.