Технические детали

Две продакшн-системы на edge‑инфраструктуре, без зависимости от единого плагина

Инвентаризация инфраструктуры и панели управления для motperde.com и bursaucuznakliye.net.tr, извлечённая из кодовой базы от начала до конца. В отличие от готовых систем управления контентом на основе пакетов/плагинов, обе системы — это написанное с нуля собственное программное обеспечение, работающее на edge‑сети и не требующее сервера базы данных.

Чем это отличается от готовых систем

Пять измерений — без указания имён, в сравнении с традиционной архитектурой CMS на плагинах.

ИзмерениеЭта системаТрадиционная CMS на плагинах
Модель хостингаНет единого сервера — запрос обрабатывается ближайшей точкой сети по всему миру, риск «сервер упал» структурно отсутствуетЕдиный центральный сервер (или ограниченный CDN‑кэш), узкое место при росте трафика
База данныхMotperde: хранилище ключ-значение с низкой задержкой, SQL‑сервера для администрирования нет. Nakliye: базы данных нет вообще, контент встроен в код на этапе сборкиОтдельный процесс SQL‑базы — требует резервного копирования, совместимости версий, оптимизации запросов
Поверхность атакиПлагинов нет → нет уязвимостей, связанных с плагинами. Вход в админку — на собственной логике токена/сессии, стандартное сканирование форм входа бесполезноТысячи сторонних плагинов, регулярные объявления об уязвимостях, известная цель автоматических сканирующих ботов
Скорость страницыСерверный рендеринг + статические ресурсы отдаются с ближайшей точки сети; измеренный PageSpeed 100/100 (сайт по грузоперевозкам, измерено)Замедляется по мере роста стека плагинов, компенсируется плагинами кэширования
Нагрузка на обслуживаниеАвтоматическая сборка + развёртывание одной командой, конфликтов версий/совместимости нетЯдро + тема + каждый плагин нужно обновлять по отдельности, поломка сайта после обновления — обычное дело
КастомизацияКаждый модуль админ-панели написан с нуля под реальную потребность бизнеса (например, 7 разных типов калькуляторов товаров, полная интеграция 5 платёжных провайдеров)Ограничена возможностями готового плагина; для особой бизнес-логики нужен ещё один плагин или внедрение кода
React 19TanStack Start / Router / QueryTailwind CSS 4Работа без сервера на edge‑сетиХранилище ключ-значениеОбъектное хранилище (изображения и файлы)Генерация изображений ИИ прямо на edgeЗапланированные автоматические задачи
11
модулей админ-панели
7
типов калькулятора товаров
5
интегрированных платёжных провайдеров
2
уровня автоматического резервного копирования
3
ежедневных триггера автоматизации

Инфраструктура и развёртывание

  • Serverless edge‑архитектуравсе запросы проходят через единую точку входа; здесь же централизованно управляются обратные вызовы платёжных провайдеров, редиректы и заголовки безопасности.
  • Двухуровневая конфигурация развёртыванияразработка и продакшн изолированы отдельными файлами конфигурации; отдельно проверяется, что изображения действительно отправляются в продакшн.
  • Автоматические заголовки безопасностиHSTS, защита от кликджекинга, защита от MIME‑сниффинга, политика referrer добавляются к каждому HTML‑ответу.
  • Редирект с www на корневой доменнесоответствия регистра и разные варианты адреса сводятся к единому адресу для поисковой системы.
  • Фирменная страница ошибкипри ошибках серверного рендеринга посетитель видит не голую техническую ошибку, а страницу в стиле бренда.

Аутентификация и сессии

  • Собственный слой аутентификации админкипароль хранится необратимо, при каждом входе генерируется одноразовый сессионный ключ, который сам истекает через 7 дней.
  • Минимальная поверхность утечкивместо стандартной сессии на cookie/JWT используется клиентская логика токена; автоматические боты, сканирующие типовой вход в CMS, эту систему не распознают.
  • Смена пароля внутри панелиобязательна проверка старого пароля, для нового действует проверка минимальной длины.
  • Панель закрыта от поисковых системмаршрут админки помечен мета-тегом «не индексировать».

Ценообразование и курсовой движок

  • Управление курсом валют из одной точкивсе цены товаров хранятся в USD, изменение курса в одном месте мгновенно обновляет весь каталог.
  • Наценка/маржа по группам товаровпроцентная наценка на категорию, динамически поддерживается и для новых категорий, добавленных через панель.
  • Сохранение истории цендаже если категория удалена из панели, наценка для неё сохраняется без потери данных.
  • Режим «цена по запросу»для отдельных товаров цену можно скрыть и вместо добавления в корзину направлять к контактам.

Управление страницами и меню

  • Сортировка меню перетаскиваниемпорядок верхнего меню, лент/категорий на главной и подвала синхронно обновляется из одной панели одним сохранением.
  • Переключатель видимости страницылюбую категорию/страницу можно скрыть из меню, данные при этом сохраняются в архиве, не удаляясь.
  • Создание собственных странициз панели можно добавить неограниченное число новых категорий/страниц товаров: заголовок, обложка, описание, SEO‑описание, иерархия родитель/потомок.
  • Редирект со старой страницы на новуюудалённая страница автоматически привязывается к новому адресу постоянным редиректом, дружественным для поисковых систем.
  • Массовое редактирование ценцены всех товаров на странице можно массово обновить с одного экрана.

Товары и система калькуляторов

  • 7 разных логик ценообразования в одной панеликалькуляторы по квадратным метрам, по ширине×складкам×крылу, по количеству с акциями, по модели/таблице, по отдельному списку размеров, по детали/коду и по таблице типов — каждый написан под реальную логику продаж своей товарной группы.
  • Добавление/редактирование/удаление товара через панельновый товар, модель, цвет, вариант размера можно определить без вмешательства разработчика.
  • Управление значениями калькулятора по умолчаниюначальное значение и диапазон мин/макс/шаг для каждого товара/группы переопределяются из панели.

Медиа и управление файлами

  • Сжатие изображений прямо в браузерекаждое загруженное изображение автоматически конвертируется и сохраняется в трёх разрешениях в современном сжатом формате.
  • Организация альбомов/папоктысячи изображений упорядочиваются в группы по тегам.
  • Защита используемых изображенийесли изображение используется в каком-либо товаре/странице, его случайное удаление блокируется.
  • Очистка «осиротевших» изображенийнеиспользуемые изображения можно удалить как автоматически, так и вручную из панели — расходы на хранение не растут бесконтрольно.
  • Отдельное хранилище файлов/каталоговзагружаемые файлы вроде PDF отдаются независимо от изображений, со своего отдельного публичного адреса.

Платёжная инфраструктура

  • 5 полностью интегрированных платёжных провайдеровiyzico, PayTR, Craftgate, Moka и PayU — каждый подключён с нуля по официальному алгоритму подписи/проверки.
  • Выбор провайдера из панелиактивный провайдер, тестовый/боевой режим и статус вкл/выкл управляются с одного экрана; по умолчанию — тестовый режим и выключено, риска случайного приёма боевого платежа нет.
  • Маскированные учётные данныеAPI‑ключи, введённые в панели, больше никогда не показываются полностью, видны только последние 4 цифры для проверки.
  • Платёжные данные вне резервного копированияиз-за чувствительности данных платёжные учётные данные сознательно исключены из общей системы резервного копирования.
  • Отдельные конечные точки обратных вызовов по провайдерамcallback‑запрос каждого платёжного провайдера обрабатывается отдельно, на уровне сырого HTTP, с проверкой подписи.

Резервное копирование и восстановление

  • Ежедневный автоматический бэкапвыполняется каждую ночь по расписанию, хранится за последние 14 дней.
  • Мгновенный бэкап перед сохранениемперед любым действием «сохранить» в панели текущее состояние автоматически резервируется.
  • Восстановление в один кликможно вернуться к любой точке резервной копии; перед восстановлением текущее состояние также отдельно бэкапится.
  • Экспорт данныхвсе данные сайта можно скачать в формате JSON.

Студия изображений на ИИ

  • Предпросмотр интерьера «текст в изображение»когда клиент выбирает группу штор, цвет и тип комнаты, автоматически формируется подходящее описание сцены, и модель генерации изображений на edge мгновенно создаёт картинку.
  • Промпт-инжиниринг под каждую товарную группудля 9 разных групп штор определены отдельные правила сцены.
  • Честная по квоте обработка ошибокпри превышении дневного лимита генерации пользователю показывается чёткое сообщение о реальной ситуации, без тихого сбоя.

SEO и видимость для ИИ (GEO)

  • Карта сайта из живых данныхлюбое изменение в панели мгновенно отражается в карте сайта, удалённые страницы автоматически убираются.
  • Автоматизация структурированных данныхrich‑данные для магазина, товаров и сайта генерируются автоматически на каждой странице; поддельные рейтинги/отзывы сознательно не добавляются.
  • Файл-сводка для ИИ-поисковиковдля инструментов вроде ChatGPT/Perplexity предоставляется отдельный адрес со сводкой, генерируемой из живых данных, чтобы сайт описывался точно.
  • Интеграция с поисковой консольюреальные данные по кликам/показам регулярно экспортируются и архивируются.
Ключевое инженерное решение — на первый взгляд единая операция вроде сортировки меню на самом деле согласованно обновляет 3 отдельных набора данных; для пользователя это выглядит как одна кнопка «сохранить».
React 19TanStack Start / RouterTailwind CSS 4Работа без сервера на edge‑сетиБез зависимости от базы данныхГенерация текста ИИ прямо на edge
100/100
балл PageSpeed (измерено)
45+
страниц контента
6
типов структурированных данных
0
баз данных для администрирования

Инфраструктура и развёртывание

  • Архитектура контента полностью на файлах данныхуслуги, районы, кварталы, маршруты и записи блога хранятся в типобезопасных файлах кода; отдельной базы данных, которую нужно опрашивать во время выполнения, нет — на одну точку отказа меньше.
  • Публичный тестовый поддомен сознательно отключёнриск того, что поисковая система увидит один и тот же контент на двух разных адресах и «разделит» его ценность, устранён заранее.
  • Неизменяемый кэш на 1 год для статических ресурсовпри повторных визитах страница загружается почти мгновенно.
  • Временные метки, зафиксированные во время сборкиинформация «последнее обновление» в карте сайта фиксируется в момент реальной сборки — поисковой системе не подаётся ложный сигнал «меняется каждый день».

Безопасность

  • Архитектура с нулевой поверхностью атакипоскольку нет формы входа, учётной записи пользователя и базы данных, классические типы атак — перебор, SQL‑инъекция, перехват сессии — технически невозможны.
  • Заголовки безопасности и на сервере, и на уровне статических ресурсовHSTS, защита от кликджекинга, защита от MIME‑сниффинга присутствуют в каждом ответе.
  • Единственная внешняя точка доступа защищена общим секретным ключомединственная конечная точка, используемая агентом автоматизации, проверяется закрытым ключом.

Автономный ИИ-агент контента

  • Ежедневная автоматическая генерация FAQвнешний планировщик раз в день вызывает защищённую конечную точку, получает черновик контента от двух разных ИИ-моделей и добавляет его в контент сайта.
  • Обработка ошибок с учётом квотыпревышение лимита чётко определяется и сообщается, без тихого сбоя.
  • Публикация под контролем человекасгенерированный контент публикуется не напрямую в продакшн, а проходит через обычный процесс сборки и развёртывания.

SEO и видимость для ИИ (GEO)

  • Карта сайта, robots и файл-сводка для ИИ полностью из данныхсписки услуг/районов/кварталов/маршрутов/блога формируются автоматически из единого источника данных, а не вручную.
  • Дисциплина против doorway‑страницчисло страниц по кварталам сознательно ограничено — мера против риска штрафа за низкокачественные/шаблонные страницы.
  • Структурированные данные с реальными ценамина страницах услуг используются реальные, подтверждённые пользователем ценовые уровни, а не выдуманные цены/рейтинги.
  • Подтверждение через поисковую консоль и быстрое уведомление о новом контентео новых/обновлённых страницах сообщается поисковой системе, не дожидаясь стандартного обхода.
Заметка о текущем состоянии — сейчас этот сайт работает без панели администратора, полностью на основе кода и файлов данных; панели управления, как у motperde, в этом репозитории нет. Это можно считать преимуществом («нагрузка на обслуживание близка к нулю»); при необходимости сюда тоже можно перенести модульную архитектуру панели.

Итог

Ключевые инженерные решения

Детали, которые на уровне кода отвечают на вопрос покупателя «а действительно ли этот проект сделан серьёзно».

Честная дисциплина данных

Ни на одной странице нет выдуманных рейтингов, поддельных отзывов или несуществующих остатков — сознательное решение не отправлять Google ложные сигналы.

Измеримая динамика SEO

Данные поисковой консоли регулярно архивируются; утверждение «трафик растёт» опирается не на предположения, а на зафиксированные измерения.

Самозащищающееся резервное копирование

Перед каждым сохранением в админке автоматически создаётся мгновенный бэкап — риск необратимой ошибочной операции на практике исчезает.

Ноль плагинов, ноль риска лицензий

Нет зависимости от сторонних лицензий на плагины/темы — нет риска, что «разработчик плагина забросил проект».

Учётные данные провайдера никогда не видны полностью

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

Пусть ваш проект тоже будет построен так же надёжно

MetaZernioVISA