@lolrofl01

Какой фронтенд выбрать в пару к бэку на laravel, чтобы был как SPA, но с SEO индексацией?

Есть несложный сайт-статейник, с магазином и корзиной. Клиент хочет, чтобы страницы открывались максимально быстро без перезагрузок. Т.е. SPA. Однако ему очень важно SEO. Поэтому смотрим в сторону SSR. Однако насколько я вижу, если прикрутить к inertia (работаем через нее) SSR-свистоперделки, то появляется необходимость в установленном node.js на сервере. Однако в нашем случае это простой хостинг и клиент переходить на VPS не хочет, потому что этот хостинг у него проплачен на годы вперед и вообще хочет остаться у них. Есть какой-то выход из этого?

Думаю в сторону livewire. Мне лично эта технология не нравится, потому что мешает фронт с бэком в одних файлах, потом черт ногу сломит. Но может это выход? Как у него с SEO? Насколько я читаю из водяных статей (а они все плюс-минус одинаковые) пишут, что после blade вообще мол разницы не почуешь, все там точно так же и мол логика работы такая же, только ajax запросы по каждому пуку появляются.

Кто что посоветует? Бэк полностью написан на ларе, фронт пока на старинном jquery с тучей виджетов-плагинов. В общем, чтобы в идеале работало как SPA, при этом отдавало сгенеренный html или типа того (для SEO) и при этом работало на обычном хостинге (не vps).

Мне пришла в голову даже супер костыльная идея, но которая бы сильно облегчила весь процесс. Что если не ставить никакие инерции, а пойти таким путем: навесить на все ссылки на сайте js обработчики, которые будут запрашивать у бэка данные для конкретной страницы, к которой обращаются. На бэке возвращать отрендеренный шаблон и вставлять его на клиентской части вместо текущего. Получится тоже самое SPA со статичными шапкой, футером и сайдбаром, но с динамическим контентом. При этом если поисковик или браузер не поддерживают js - для них сайт будет работать как и прежде. В теории, таким образом получится реализовать задачу за пару дней, заказчик получит то, что хочет, SEO не пострадает. Никакой хостинг с node.js не нужен. Одни плюсы, за исключением костыльности способа. Может делал кто-то так и знает какую-то проблему?
  • Вопрос задан
  • 201 просмотр
Решения вопроса 1
yesbro
@yesbro
Думаю, помогаю думать
Livewire https://livewire.laravel.com/

Как у него с SEO?
Отлично. Как в обычном html

только ajax запросы по каждому пуку появляются
При первой загрузке страницы она отдается в чистом html. Аякс запрос будут уже потом идти. Так что поисковик всегда будет получать чистый html.

На бэке возвращать отрендеренный шаблон и вставлять его на клиентской части вместо текущего.
Получится тот же самый Livewire, только хуже.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Sanes
@Sanes
HTMX, Hotwire Turbo примерно тоже самое.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы