По сути React создавался фейсбуком для закрытого от поисковиков проекта — в фейсбуке почти все доступно только для зарегистрированных пользователей. По этому проблемы как бы и нет.
Реальные же сайты хотят чтобы контент не только отображался с JS, но и был доступен для индексирования всеми поисковиками.
Он то и делает эту задачу, т.е. сервер уже отдает HTML, запуск JS происходит на сервере. Это нужно для поисковиков. Хотя, в последних шаблонах его убрали
Как вообще принято решать проблему индексации в рамках всеобщего перехода на React и иже с ними?
Здравствуйте, Shmj, Вы писали:
S>Реальные же сайты хотят чтобы контент не только отображался с JS, но и был доступен для индексирования всеми поисковиками.
Поисковики давно научились выполнять клиентский JS и рендерить результаты во время индексированиии.
Google, в частности, делает это уже пять лет как.
Здравствуйте, bnk, Вы писали:
bnk>Поисковики давно научились выполнять клиентский JS и рендерить результаты во время индексированиии. bnk>Google, в частности, делает это уже пять лет как.
А другие поисковики? Приведите исследование и сводные результаты по данному вопросу.
Здравствуйте, Shmj, Вы писали:
S>Здравствуйте, bnk, Вы писали:
bnk>>Поисковики давно научились выполнять клиентский JS и рендерить результаты во время индексированиии. bnk>>Google, в частности, делает это уже пять лет как.
S>А другие поисковики? Приведите исследование и сводные результаты по данному вопросу.
Здравствуйте, bnk, Вы писали:
bnk>Да вроде все уже...
bnk>#bla/bla/bla (клиентские пути) поддреживаются
В настоящий момент это происходит лишь для небольшой части сайтов и отдельных страниц, известных индексирующему роботу.
Это называется бежать впереди паравоза. Тем более не ясно как это скажется на SEO — Google занижает медленные сайты, быть может будет занижать и с JS-рендерингом
Если чисто для себя, для проверки зайдет или нет — то можно сделать. А если на заказ хотя бы малому бизнесу — дурью никто страдать не будет.
Здравствуйте, vsb, Вы писали:
vsb>Гугл выполняет. До остальных никому дела нет.
Если для себя делаете типа блог — то да, можно ради прикола посмотреть что будет. Вроде должно проиндексироваться а если нет то и пофиг.
Если же от качества индексации зависит прибыль, пусть и не мега-корпорации — дурью никто страдать не будет. Есть то что точно работает во всех поисковиках — это HTML. Яндекс пишут что выполняют JS только для некоторых сайтов, так что ваш сайт может просто не попасть в индекс или дадут низкую позицию.
Но да, если вы для себя делаете по приколу — то можно не переживать.
Здравствуйте, Shmj, Вы писали:
vsb>>Гугл выполняет. До остальных никому дела нет.
S>Если для себя делаете типа блог — то да, можно ради прикола посмотреть что будет. Вроде должно проиндексироваться а если нет то и пофиг.
S>Если же от качества индексации зависит прибыль, пусть и не мега-корпорации — дурью никто страдать не будет. Есть то что точно работает во всех поисковиках — это HTML. Яндекс пишут что выполняют JS только для некоторых сайтов, так что ваш сайт может просто не попасть в индекс или дадут низкую позицию.
С таким подходом можно и от JS отказаться, у какой-то доли юзеров он отключен. Доля яндекса и других поисковиков мизерная. Или IE 6 поддерживать, лол.
Ну а так да, есть технологии. В случае React + Redux просто делаешь рендеринг на сервере и state высылаешь. Клиенту приходит отрендеренный HTML. Ничего сложного.
S>Но да, если вы для себя делаете по приколу — то можно не переживать.
Для себя я бы заморочился, мне по фану все эти микрооптимизации, я бы и версию без JS сделал. А как раз в коммерческих проектах никто этим не парится по моему опыту, всем важно подешевле да побыстрей.
Здравствуйте, vsb, Вы писали:
vsb>Для себя я бы заморочился, мне по фану все эти микрооптимизации, я бы и версию без JS сделал. А как раз в коммерческих проектах никто этим не парится по моему опыту, всем важно подешевле да побыстрей.
Покажите мне коммерческий сайт (магазин, к примеру) из топа Google или Yandex, который работает чисто на JS Вряд ли найдете.
Ваши розовые мечты сильно расходятся с реальностью.
Если вы скажиет заказчику, типа, вроде должно работать — вас погонят ссаными тряпками. Никто не будет рисковать. Вот есть то что гарантированно работает — все делают по этому образцу. Тратить деньги на то чтобы ты поигрался с новомодными технологиями и проверил а будет ли оно так же индексироваться — ни один лох не будет.
Здравствуйте, Shmj, Вы писали:
vsb>>Для себя я бы заморочился, мне по фану все эти микрооптимизации, я бы и версию без JS сделал. А как раз в коммерческих проектах никто этим не парится по моему опыту, всем важно подешевле да побыстрей.
S>Покажите мне коммерческий сайт (магазин, к примеру) из топа Google или Yandex, который работает чисто на JS Вряд ли найдете.
Здравствуйте, vsb, Вы писали:
vsb>AirBnB подойдёт?
1. Отключаем JS.
2. Введим в гугле site:www.airbnb.ru (сам Google без JS прекрасно работает, кста).
3. Переходим по все страницам из индекса — они все работают без JS.
Страниц из индекса, которые не работают без JS — не нашел.
Вот в этом и проявляется отличие профессионала от любителя. Любитель делает на основе своих фантазий, искренне веря в что если это модно — значит это будет работать. Профессионал смотрит на реальные факты.
По факту — нет ни одного сайта, который бы работал на чистом JS и был в топе гугла.
Да, как дополнение JS может служить. Но основа — все равно чистый HTML и серверный рендеринг.
Здравствуйте, Shmj, Вы писали:
S>Как вообще принято решать проблему индексации в рамках всеобщего перехода на React и иже с ними?
Создать отдельные страницы специально для поисковика.
Страницы должны выводить информацию из БД и шаблонов. Даже дизайн особый не нужен.
На статической странице кнопка — перейти в app (переход из статического сайта в динамический).
Здравствуйте, Буравчик, Вы писали:
Б>Создать отдельные страницы специально для поисковика. Б>Страницы должны выводить информацию из БД и шаблонов. Даже дизайн особый не нужен. Б>На статической странице кнопка — перейти в app (переход из статического сайта в динамический).
Здравствуйте, Shmj, Вы писали:
S>Здравствуйте, Буравчик, Вы писали:
Б>>Создать отдельные страницы специально для поисковика. Б>>Страницы должны выводить информацию из БД и шаблонов. Даже дизайн особый не нужен. Б>>На статической странице кнопка — перейти в app (переход из статического сайта в динамический).
S>Получается двойная работа...
Да, работы больше.
Но не вдвойне, т.к. статические страницы сделать сильно проще приложения.
Плюс адаптированы под поиск они будут лучше, чем app.
Здравствуйте, Буравчик, Вы писали:
Б>Да, работы больше. Б>Но не вдвойне, т.к. статические страницы сделать сильно проще приложения. Б>Плюс адаптированы под поиск они будут лучше, чем app.
Серверный пре-рендеринг лучше по двум параметрам:
1. Не нужно делать дурную работу/синхронизировать фактически две версии в актуальном состоянии.
2. Страница загружается быстрее, т.к. сервер мощнее и у вас в распоряжении возможности по кешированию.
Но это сложнее — нужно разобаться как это настроить. Зато разобравшись один раз — можете использовать везде и делать сайты совсем иного уровня качества.
Здравствуйте, Shmj, Вы писали:
S>По сути React создавался фейсбуком для закрытого от поисковиков проекта — в фейсбуке почти все доступно только для зарегистрированных пользователей. По этому проблемы как бы и нет.
S>Реальные же сайты хотят чтобы контент не только отображался с JS, но и был доступен для индексирования всеми поисковиками.
S>Какой же выход предлагает современная индустрия?
S>В ASP.Net есть спец. тег:
S>
S>Он то и делает эту задачу, т.е. сервер уже отдает HTML, запуск JS происходит на сервере. Это нужно для поисковиков. Хотя, в последних шаблонах его убрали
S>Как вообще принято решать проблему индексации в рамках всеобщего перехода на React и иже с ними?
Давайте разберёмся с определениями.
Реальные сайты не пишут на JS.
Реальные сайты статические и состоят только из HTML.
Этого достаточно поисковикам.
Для людей включается JS, но сайт должен работать без JS.
JS включается для улучшения.
Если "сайт" написан полностью на JS, это не сайт, это программа или приложение.
Поисковики не парсят приложения.
Поисковики умеют индексировать только статику и HTML.