Позвольте мне очертить проблемное пространство. Я хочу создать SEO-дружественную страницу, которая содержит динамическую информацию, но также содержит области информации, которые легко редактируются редакторами содержимого HTML (НЕ программистами) вне обычного жизненного цикла разработки (я назову этот контент «статическим» контентом). Например, представьте страницу продукта, на которой имеется пушистое содержимое о продукте и несколько изображений сверху (статический контент), а затем внизу результаты динамического поиска в реальном времени с нашего сайта для этого продукта (динамический контент).
Некоторые ограничения:
- AJAX не подходит для динамической части (пауки не получат динамический контент)
- IFrame не является опцией для динамической части (снижает пользу SEO)
- статический контент должен быть легко редактируемым в любое время кем-либо за пределами разработки, и изменения должны вступать в силу своевременно (в режиме реального времени нет необходимости, но им не нужно ждать, пока мы перезапустим серверы веб-приложений, например).
- эти страницы будут сильно повреждены, поэтому производительность и влияние на систему являются одним из факторов (например, обращение к базе данных или файловой системе за контентом при каждом обращении к странице нецелесообразно).
Я думаю, что вся страница должна быть стандартным динамическим сервлетом с настраиваемыми областями HTML, которые редакторы контента могут каким-либо образом редактировать. Именно этот аспект редактирования я ищу для предложений. Я мог бы решить проблему с текстовыми файлами, которые доступны на нашем сетевом хранилище в общем расположении как для редакторов контента, так и для кластера серверов веб-приложений, которые считываются серверами веб-приложений и кэшируются при доступе к страницам, а затем передаются в части уровня представления. , но я надеюсь, что есть что-то, что делает это немного менее хакерским или, по крайней мере, делает некоторые сантехнические работы для меня, которые могут подключиться к нашему уровню представления или контроллера.
Конечно, если есть способ сохранить статичность всей страницы, но использовать некоторые динамические данные таким образом, чтобы пауки видели их как часть одной и той же страницы, это было бы идеально.
Примечания по технологиям:
- мы используем Java-стек с открытым исходным кодом с Velocity в качестве слоя представления для обслуживания нашего динамического содержимого сервлета
- Apache обслуживает все статические HTML-страницы