В новом видео из серии Lightning Talks сотрудник Google Мартин Сплитт поделился советами по SEO для одностраничных приложений (Single Page App, SPA).
Главным различием между обычным, основанным на HTML, сайтом и одностраничным приложением является то, что SPA в своей работе полагается на JavaScript.
В одностраничных приложениях JS используется для создания HTML. Он также нужен для загрузки нового контента по мере того, как пользователи переходят из одной части приложения в другую. В этом случае страницы обычно называют «представлениями» (view).
Использование JavaScript в одностраничных приложениях позволяет браузерам загружать представления без полной перезагрузки. JS также позволяет реализовать различные элементы дизайна.
Поисковым система обычно труднее сканировать и индексировать JavaScript, чем обычный HTML.
Рекомендации Google
Чтобы приложение хорошо сканировалось и индексировалось, Google рекомендует следующее:
- Убедитесь, что охвачены все проходы кода. Googlebot, например, отклоняет запросы на геолокацию пользователя. Важно следить, что код был рабочим и содержал те функции, которые поддерживаются поисковыми системами. В коде также нужно указать, что должно делать приложение, если отдельные команды не могут быть выполнены.
- При переходах между представлениями должен меняться URL-адрес. Так как для поиска страниц Googlebot использует URL-адреса, если URL будет одинаковым во всех представлениях, краулер увидит только одну страницу. Чтобы это исправить, можно использовать History API и правильную разметку ссылок с атрибутами href.
- Оптимизируйте заголовки и описания для каждого представления. Они должны быть разными. Внесите соответствующие изменения в JS. Это значительно улучшит ваши результаты поиска.
-
Пропишите сценарии поведения в случае ошибки. Например, если URL недействителен. На примере Сплитта приложение показывало сообщение об ошибке, при этом сервер возвращал код ответа 200. Коды состояния сервера влияют на дальнейшие действия Googlebot и браузеров. Поэтому этот сценарий лучше исправить. Для этого нужно настроить сервер таким образом, чтобы он возвращал код ошибки в случае определённого URL. Например, /not-found выдаст 404, /maintenance – 500 и т.д. После такой перенастройки можно внести изменения в JavaScript, чтобы сделать переадресацию на указанный URL ошибки. В результате браузеры и Googlebot получат сообщение, что цель этой страницы – перенаправление на другой URL, и что сам этот URL не является ошибкой.
Посмотреть весь выпуск: