Индексация JavaScript приложения, белый клокинг

A
На сайте с 24.04.2011
Offline
30
4617

Поисковики при индексации читают HTML отправленную сервером и индексируют текст который внутри, так работают обычные сайты.

JavaScript приложения-же работают по другому - они генерируют HTML в браузере "на лету" - а с сервера получают не HTML a данные в формате JSON.

Поэтому с ними проблема - поисковики не могут получить HTML потому-что никакого HTML на сервере нет.

Второй момент - есть "одностраничные приложения" - когда при навигации по страницам приложения адрес не меняется - индексировать их смысла нет и мы их не рассматриваем.

Но есть приложения которые меняют адрес, и хоть они делают это без перезагрузки страницы - адрес меняется, для пользователей оно выглядит как обычный сайт и индексировать его смысл есть.

Далее - говорят что Гугл и Яндекс в последнее время стали умнее и могут индексировать такие приложения.

Но, хоть они их как-то и индексируют - есть подозрения что индексируют хуже чем обычные сайты - и это мешает продвижению.

Вопрос - как решить эту проблему?

У гугла есть специальный протокол разработаный именно для такого случая, но, во первых он жутко сложный, во вторых - кроме гугла его скорей всего никакие другие поисковики не понимают и поэтому вариант этот отпадает.

Далее, можно на сервере опознавать что пришел поисковик и вместо JSON данных для приложения отдавать ему HTML сгенерированный на сервере - этот вариант работает, но также имеет огромный минус - очень высокую сложность - сделать так чтобы HTML можно было генерировать и на коиенте и на сервере очень сложно, поэтому он тоже отпадает.

Есть еще третий вариант - клокинг - на сервере можно определять что пришел поисковик и вместо JSON данных отправлять ему HTML, но, не полную (полную сделать очень сложно, как писал выше) а минимальную - только текст.

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

Вообще клокинг наказывается поисковиками - но, в данном случае - получается что сами тексты будут вобщем-то одни и те-же, клокинг делается не с целью обмана поисковика.

Как поисковики будут относится к такому варианту? Нормально или расценят это обманом и забанят?

Бесплатный открытый генератор сайтов http://eviltext.com (http://eviltext.com)
SI
На сайте с 03.12.2007
Offline
130
#1

Индексирование AJAX-сайтов

http://help.yandex.ru/webmaster/robot-workings/ajax-indexing.xml

-= Онлайн сервисы =-
A
На сайте с 24.04.2011
Offline
30
#2

Да там мутно как-то, непонятно - например пишут добавлять восклицательный знак к хешу

Но сейчас уже никто не использует хеши типа #blog , их использовали в старых браузерах, сейчас используют обычный путь /blog .

[Удален]
#3

меня всегда умиляют подобные топики :)

спрашивается на фига использовать технологию если не понимаешь для чего она и как ею пользоваться?

по сути проблема создана искусственно, не очень далёкими разработчиками

у них на поводу пошли да же пс, предлагая костыли, для исправления кретинизма, правда это породило ещё большие проблемы, но об этом пс успешно молчат.

P.S. сайты на js с использованием AJAX прекрасно индексируются, просто надо при создании понимать что делаешь и для чего

Bitman
На сайте с 05.07.2009
Offline
112
#4

"понимать что делаешь и для чего" - хорошо сказано

Северный лес (https://euro-vagonka.by) DREW (https://drew.by) AvtoDrive (https://avtodrive.by)
A
На сайте с 24.04.2011
Offline
30
#5

Как именно они проиндексируют сайт, в котором HTML получается только после того как JavaScript построит его в браузере?

Единственный способ для поисковика проиндексировать такой сайт - зайти с эмулятором браузера на сайт и запустить выполнение JavaScript чтобы он построил HTML и только потом распарсить этот полученный HTML.

Это гораздо сложнее чем с обычными сайтами - когда поисковик просто напросто скачивает HTML и парсит его.

сайты на js с использованием AJAX прекрасно индексируются

Зачем тогда гугл и яндекс придумывают специальные протоколы, если сайты и без этого "прекрасно индексируются"?

сайты на js с использованием AJAX прекрасно индексируются, просто надо при создании понимать что делаешь и для чего

В чем заключается разница между правильными и неправильными сайтами на AJAX? Видимо 2 года я создавал неправильные продукты, было-бы интересно узнать в чем именно я ошибался и как создавать правильные.

[Удален]
#6
axyd:
В чем заключается разница между правильными и неправильными сайтами на AJAX? Видимо 2 года я создавал неправильные продукты, было-бы интересно узнать в чем именно я ошибался и как создавать правильные.

http://www.unmedia.ru/js-seo.html

DiAksID
На сайте с 02.08.2008
Offline
218
#7
axyd:
... сделать так чтобы HTML можно было генерировать и на коиенте и на сервере очень сложно, поэтому он тоже отпадает ...

с чего бы ему "отпасть", когда есть более чем рабочие схемы с весьма изящным реализациями и шикарными перспективами ? 😂

axyd:
... Видимо 2 года я создавал неправильные продукты, было-бы интересно узнать в чем именно я ошибался и как создавать правильные.

да не видимо, а наверняка 🙅 и одним Аяксом дело не заканчивается, это всего лишь одна и далеко не лучшая из используемых в таких случаях технологий ...

show must go on !!!...
A
На сайте с 24.04.2011
Offline
30
#8

[QUOTEhttp://www.unmedia.ru/js-seo.html]и что там написано? Какое это вообще имеет отношение к теме? Там реч про обычный сайт с JS вставками а здесь про полностью генерируемый жатва скрипом.

с чего бы ему "отпасть", когда есть более чем рабочие схемы с весьма изящным реализациями и шикарными перспективами ?

рабочих схемы две

Использовать на сервере эмулятор браузера чтобы собрать HTML для поисковика

Либо дублировать код и шаблоны генерации чтобы они работали и на сервере и на клиенте

Оба подхода сложные

Что за элегантную схему вы имеете ввиду?

DiAksID
На сайте с 02.08.2008
Offline
218
#9
axyd:
... рабочих схемы две ... оба подхода сложные ...

если вы можете представит себе всего два примитивных способа реализации client-side рендеринга, это не значит, что так и есть на самом деле ;) да и просто - это "Хелло Ворлд" на чистом ХТМЛ нацарапать, остальное всё "сложно" в разной степени.

burunduk частично прав:

burunduk:
... по сути проблема создана искусственно, не очень далёкими разработчиками у них на поводу пошли да же пс, предлагая костыли, для исправления кретинизма, правда это породило ещё большие проблемы, но об этом пс успешно молчат...

только акценты расставил неверно, кретинизм - это всякими аяксами на изначально server-side платформе пытаться реализовать нормальный client-side рендеринг. двадцать с лишним лет на серваках рендерили - вот и пришлось ПСы по началу извратится с костылями для любителей "крутизны".

но вот появились платформы которые работают немного по другому чем мэйнфреймы 70-х годов с текстовыми терминалами и "костыли" вдруг оказались ну ооочень даже юзабельной фичей.

axyd:
... Что за элегантную схему вы имеете ввиду? ...

ну так в же вроде как аж 2 года как "в теме" 😂 ? или всё это время и на хабре и на гугеле в бане были? если было такое горе, то хоть сейчас поройте в сторону "фуллстек/изоморфных" фреймворков...

-----

APD: burunduk, кстати насчёт "кретинизма разработчиков" и "костылей", хотите посмотреть на сайт, который и рендер и маршрутизацию делает на клиенте, но которому по природе не нужны "хэш костыли" для индексации ;) да и про аякс он вспоминает только на древних броузерах-монстрах ?

A
На сайте с 24.04.2011
Offline
30
#10

Давайте придерживаться конкретных примеров а не абстрактных формулировок, иначе получается разговор ниочем.

если вы можете представит себе всего два примитивных способа реализации client-side рендеринга, это не значит, что так и есть на самом деле

Я привел два варианта как это сделать - в чем заключается ваш вариант? Тем более как вы упомянули он простой и элегантный - следовательно не должно быть проблемой в 1-2 строчки описать его.

"фуллстек/изоморфных" фреймворков

Этого добра слишком много, сейчас каждый десятый проект - какойнибуть веб фреймворк.

Есть 2 лидера - backbone.js и angular.js на которых делается 90% всех приложений этого класса. И есть остальные, среди которых встречаются сложные и неудобные в использовании варианты - но как они пишут на своих сайтах "упрощающую" разработку за счет использования темплейтов и на сервере и на клиенте. Только почему-то - зайдя на сайт таких крутых и продвинутых фреймворков в разделе "сделано на нем" видишь какие-то жуткие поделки по сравнению с например тем что сделано на бакбоне.

Какой конкретно из этих "продвинутых" изоморфных/фуллстэк фреймворков вы имеете ввиду?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий