Ще одна стаття про індексацію ajax-сайтів пошуковими системами

одна

Стильно, модно, молодіжно сьогодні робити сайт на AJAX, з погляду користувача — це швидко і зручно, а пошукові роботи з такими сайтами можуть мати проблеми.

Тут ми просто підвантажуємо ті ж сторінки, але ajax-ом, при цьому на бекенді потрібно обробити спеціальний GET-параметр ajax і за його наявності віддавати сторінку без layout-а, ну якщо грубо.

Можна обробляти ці запити засобами фреймворку, але в складному додатку з angularjs - це купа зайвого коду.

Шлях яким ми підемо описаний на наступній схемі від гугл:

стаття

Для цього ми ловитимемо всі запити з _escaped_fragment_ і відправлятимемо їх на phantom.js на сервері, який засобами серверного webkit буде генерувати html-зліпок запитуваної сторінки і віддавати його краулеру. Користувачі залишаться працювати на пряму.

Для початку встановимо необхідний софт, якщо не встановлено ще приблизно так:

Далі напишемо (ну або візьмемо готовий) серверний js-скрипт (server.js), який робитиме html-зліпки:

І запустимо його в скрині за допомогою phantomjs:

Далі налаштуємо nginx (apache аналогічно) на проксіювання запитів на запущений демон:

Тепер при запиті example.com/cats/grumpy-cat пошукові роботи будуть звертатися за посиланням example.com/?_escaped_fragment_=cats/grumpy-cat, яке перехопиться nginx-ом, відправиться phantomjs-у, який на сервері через браузерний двигун згенерує html та віддасть його роботу.

Окрім пошукових роботів гугла, яндекса та бінга, це також працюватиме і для шарингу посилання через facebook.