БесплатноБесплатный аудит сайта и кода на 1С-Битрикс при заказе доработки или поддержки
Перенос на 1С-Битрикс

Перенос проекта с Symfony на 1С-Битрикс

Переносим на 1С-Битрикс проекты на Symfony. Готового экспорта в Битрикс у фреймворка нет: мы разбираем сущности Doctrine, их аннотации и связи, читаем схему базы и выгружаем данные напрямую через Doctrine или SQL. Переносим всё в инфоблоки, маршруты закрываем 301-редиректами, SEO сохраняем, сайт работает без простоя.

Doctrineразбираем сущности и связи
своя БДвыгрузка из вашей схемы
без простоясайт работает во время переноса
301редиректы со старых маршрутов
Symfony · Doctrine entities 1С-Битриксинфоблоки · API
Как переносим без экспорта

Из сущностей Doctrine — в инфоблоки Битрикс

У Symfony нет кнопки «экспорт в Битрикс». Мы разбираем сущности Doctrine и их связи, выгружаем данные через Doctrine или SQL и переносим их в инфоблоки.

Doctrineсущности Связи · схемаrelations Маппингполя · свойства Инфоблоки ✓Битрикс
Сущности Doctrine → связи и схема → выгрузка из базы → маппинг → импорт в инфоблоки.
Бесплатный автосканер

Просканируйте текущий сайт перед переездом

Введите адрес — за несколько секунд проверим скорость, безопасность, CMS, SEO и мобильную версию и покажем, что важно сохранить и улучшить при переносе на Битрикс.

Проверяем скорость, безопасность, CMS, SEO и мобильную версию. Данные используем только для оценки переноса.

Зачем уходить с Symfony

Чем рискован сайт на Symfony для бизнеса

Symfony — мощный, но тяжёлый фреймворк: его обычно выбирают под крупные кастомные проекты, а для типового сайта или магазина он избыточен и дорог в поддержке.

Для типового сайта Symfony избыточен — поддержка дороже, чем нужно.
На Битрикс типовые сайт и магазин дешевле в разработке и сопровождении.
Контент и каталог правят только разработчики через код.
Битрикс даёт удобную админку, контентом управляет менеджер.
Senior Symfony-разработчики дороги и в дефиците.
Битрикс поддержит обычный веб-специалист, рынок исполнителей широкий.
Штатного обмена с 1С нет, его писали под проект вручную.
Настраиваем готовый двусторонний обмен с 1С — номенклатура и заказы синхронны.
Эффект перехода

Что меняется после ухода с Symfony

0
разработчиков ради правки контента
Doctrine
выгружаем по сущностям и схеме
без простоя
сайт доступен во время переезда
100%
записей из базы переносим

Ориентиры по переездам с Symfony. Точную оценку дадим после аудита сущностей и базы.

Что входит

Что входит в перенос с Symfony

Полный цикл: от разбора сущностей Doctrine и связей до настройки инфоблоков, 1С и редиректов.

Аудит кода проекта и бандлов Symfony
Разбор сущностей Doctrine, аннотаций и связей
Выгрузка данных через Doctrine или прямой SQL
Маппинг сущностей и полей в свойства инфоблоков
Перенос каталога, заказов, клиентов и кабинетов
Перенос медиа и пользовательских загрузок
Перенос маршрутов в 301-редиректы
Перенос мета-тегов, sitemap.xml и robots.txt
Интеграции 1С и CRM, запуск без простоя
Подробно об услуге

Перенос проекта с Symfony на 1С-Битрикс: как устроена миграция кастомного приложения

Перенос с Symfony на 1С-Битрикс — это управляемая миграция веб-проекта, собранного на одном из самых мощных PHP-фреймворков, на промышленную CMS. Symfony выбирают под крупные кастомные приложения: интернет-магазины со сложной логикой, B2B-порталы, отраслевые сервисы и каталоги. Сила фреймворка одновременно становится его слабостью для типового бизнеса: проект полностью написан под себя, у него собственная доменная модель на сущностях Doctrine, своя схема базы данных и нет никакого стандартного экспорта в Битрикс. Поэтому перенос с Symfony — это не нажатие кнопки, а инженерная работа: разобрать код, восстановить структуру данных и аккуратно перевести её в инфоблоки и модули 1С-Битрикс с сохранением SEO и без простоя сайта.

Что такое перенос с Symfony и чем он отличается от разработки заново

Разработка с нуля означает новый сайт, который заново набирает поисковый вес и теряет накопленные данные, если их не перенести вручную. Перенос — это сохранение всего ценного: каталога, заказов, базы клиентов, контента, а также SEO-истории через 301-редиректы со старых маршрутов на новые адреса. Поисковые системы воспринимают перенесённый сайт как продолжение прежнего, поэтому индексация, ссылочная масса и поведенческие факторы продолжают работать на вас. В случае Symfony перенос дополнительно усложняется тем, что данные нужно сначала достать из проекта, у которого нет готового механизма выгрузки в формат Битрикс — это делается через слой Doctrine или напрямую через SQL по схеме базы.

Кому подходит миграция с Symfony на Битрикс

Услуга востребована у компаний, которые когда-то заказали кастомную разработку на Symfony, а теперь столкнулись с дорогой поддержкой и дефицитом специалистов. Senior-разработчики уровня Symfony стоят дорого и редко доступны, а любое изменение контента или структуры требует их участия. Интернет-магазину переезд на Битрикс даёт готовый каталог, двусторонний обмен с 1С по номенклатуре, остаткам, ценам и заказам, гибкую систему скидок и удобную работу менеджеров. Корпоративному сайту — управляемую структуру разделов и визуальный редактор контента. B2B-порталу — персональные цены, прайс-листы под клиента, личные кабинеты и роли. Если вы держите команду Python и PHP-инженеров ради сайта, который по сути является типовым магазином или каталогом, переезд на Битрикс снижает стоимость владения в разы.

Что такое Doctrine и сущности простыми словами

Doctrine — это слой работы с базой данных в Symfony, так называемый ORM. Вместо того чтобы писать SQL-запросы вручную, разработчик описывает данные в виде сущностей: класс Товар, класс Заказ, класс Пользователь. Каждая сущность — это PHP-класс с полями и аннотациями, который Doctrine автоматически связывает с таблицей в базе. Связи между сущностями (например, у заказа много позиций, у товара одна категория) тоже описаны в коде. Чтобы перенести проект, мы читаем эти сущности и их аннотации как карту данных: понимаем, какие таблицы за ними стоят, какие поля и связи существуют, и по этой карте выгружаем всё содержимое базы.

Из каких частей состоит миграция с Symfony

Полноценный перенос охватывает четыре пласта проекта. Первый — код и доменная модель: бандлы Symfony, сущности Doctrine, их аннотации, связи и бизнес-логика. Второй — данные: каталог товаров с категориями и свойствами, история заказов, база клиентов, личные кабинеты, контент и медиа. Третий — SEO: структура маршрутов и URL, мета-теги, заголовки, карта сайта sitemap.xml, robots.txt и карта 301-редиректов. Четвёртый — интеграции: обмен с 1С, CRM, платёжные системы, службы доставки, аналитика. Пропуск любого из этих пластов превращает аккуратный переезд в потерю данных, позиций или функциональности.

Ключевые термины простыми словами

  • Сущность Doctrine — описание объекта данных (товар, заказ, клиент) в виде PHP-класса, который связан с таблицей базы. По сущностям мы понимаем структуру ваших данных без догадок.
  • Аннотации — пометки в коде сущностей, которые описывают поля, типы и связи. Они служат картой для выгрузки данных в правильном виде.
  • Маршрут (route) — правило, по которому Symfony превращает адрес страницы в код контроллера. Старые маршруты мы закрываем 301-редиректами на новые адреса Битрикс.
  • Инфоблок Битрикс — гибкая структура хранения данных в 1С-Битрикс: каталог, новости, разделы. В инфоблоки мы переносим сущности Symfony с их полями и связями.
  • 301-редирект — постоянное перенаправление со старого адреса на новый. Сообщает поисковикам, что страница переехала навсегда, и передаёт ей накопленный вес, чтобы позиции не просели.

Как проходит перенос без простоя

Старый сайт на Symfony продолжает работать и принимать заявки весь период подготовки. Новый проект собирается параллельно на тестовом стенде Битрикс: туда выгружаются данные, верстается дизайн, настраиваются интеграции и редиректы. Перед запуском мы сверяем полноту переноса — количество записей в базе должно совпадать с исходным проектом. Боевое переключение домена выполняется в согласованное окно минимальной нагрузки, поэтому простоя практически нет. После запуска мы отправляем новую карту сайта в Яндекс.Вебмастер и Google Search Console и контролируем индексацию.

Какие выгоды получает бизнес

После переезда с Symfony контентом начинает управлять менеджер через удобную бизнес-админку, а не разработчик через код. Стоимость поддержки падает: вместо дорогих Symfony-инженеров проект ведёт обычный веб-специалист, которых на рынке Битрикс много. Обмен с 1С работает из коробки и избавляет от ручного ведения каталога. SEO-инструменты и маркетинговые модули встроены в платформу. Данные переезжают на хостинг в РФ с защитой по 152-ФЗ. А благодаря страховке SEO и фиксированной смете переезд становится прогнозируемым по срокам, бюджету и результату.

Варианты переноса под разные задачи

Перенос контентного сайта или сервиса на Symfony — самый быстрый сценарий, если сущности понятны и данных немного. Перенос магазина на Symfony включает миграцию каталога, заказов и клиентов и настройку обмена с 1С, оплаты и доставки. Перенос нагруженного проекта со сложной доменной моделью добавляет восстановление бизнес-логики на API и модулях Битрикс, личные кабинеты, роли и интеграции. Отдельно мы рассматриваем гибридный сценарий: если ядро на Symfony оправдано как технология, мы переносим на Битрикс только витрину и каталог, а ядро оставляем и связываем через API и обмен. Под каждый случай у нас отлажена процедура разбора сущностей и выгрузки данных, поэтому миграция проходит предсказуемо вне зависимости от того, насколько кастомным был ваш проект.

Этапы и сроки

Как проходит перенос с Symfony

Старый сайт на Symfony работает и принимает заявки, пока мы готовим новый на Битрикс.

01

Аудит кода и сущностей

Изучаем проект, бандлы, сущности Doctrine, аннотации и связи, оцениваем объём данных и план.

02

Выгрузка из базы

Снимаем данные через Doctrine или прямой SQL по структуре ваших сущностей и схемы.

03

Маппинг и импорт

Сопоставляем сущности и поля со свойствами инфоблоков Битрикс и загружаем данные на стенд.

04

Дизайн и интеграции

Переносим или обновляем дизайн, настраиваем формы и обмен с 1С и CRM.

05

SEO и редиректы

Настраиваем 301-редиректы со старых маршрутов, переносим мета-теги, sitemap и robots.

06

Запуск и контроль

Переключаем домен без простоя и следим за индексацией в Вебмастере.

Расчёт выгоды

Сколько добавит уход с дорогого Symfony-сайта

Прикиньте, сколько выручки принесёт рост конверсии после переноса на удобный и недорогой в поддержке Битрикс.

Дополнительная выручка после переезда в месяц 0 ₽

Оценка по формуле: посетители × прирост конверсии × средний чек × доля закрытия в продажу (0,3). Прирост — консервативный ориентир, считаем индивидуально.

Детальный калькулятор

Детальный калькулятор переноса на 1С-Битрикс

Выберите исходную CMS, тип сайта, объём, каталог, интеграции и формат проекта — посчитаем ориентир по цене и сроку. Не знаете CMS? Укажите адрес сайта: определим систему, структуру и функционал автоматически и подставим значения, которые вы потом сможете поменять.

Стоимость

Сколько стоит перенос с Symfony

Цена зависит от числа сущностей и связей, объёма данных и нужных интеграций. Ниже — ориентиры; точную смету присылаем после бесплатного аудита.

Сайт на Symfony
от 120 000 ₽
Срок: от 3 недель

Перенос контентного сайта или сервиса на Symfony с понятными сущностями.

  • Разбор сущностей Doctrine
  • Выгрузка контента
  • 301-редиректы и мета-теги
  • Перенос или новый дизайн
Популярный выбор
Магазин на Symfony
от 220 000 ₽
Срок: от 4 недель

Перенос магазина на Symfony с каталогом, заказами, кабинетами и обменом с 1С.

  • Каталог и атрибуты
  • Заказы и клиенты
  • Обмен с 1С
  • Оплата и доставка
  • Карта редиректов
Сложный проект
от 400 000 ₽
Срок: от 7 недель

Перенос нагруженного проекта на Symfony со сложной доменной моделью и API.

  • Сложная доменная модель
  • Личные кабинеты и роли
  • Перенос логики и API
  • Сопровождение
Сайт на Symfony от 120 000 ₽
Срок: от 3 недель

Перенос контентного сайта или сервиса на Symfony с понятными сущностями.

  • Разбор сущностей Doctrine
  • Выгрузка контента
  • 301-редиректы и мета-теги
  • Перенос или новый дизайн
Популярный Магазин на Symfony от 220 000 ₽
Срок: от 4 недель

Перенос магазина на Symfony с каталогом, заказами, кабинетами и обменом с 1С.

  • Каталог и атрибуты
  • Заказы и клиенты
  • Обмен с 1С
  • Оплата и доставка
  • Карта редиректов
Сложный проект от 400 000 ₽
Срок: от 7 недель

Перенос нагруженного проекта на Symfony со сложной доменной моделью и API.

  • Сложная доменная модель
  • Личные кабинеты и роли
  • Перенос логики и API
  • Сопровождение

Дополнительные опции

Срочный перенос (ускоренные сроки) от 60 000 ₽
Разбор и документирование сущностей от 50 000 ₽
Перенос и настройка обмена с 1С от 60 000 ₽
Примеры работ

Кейсы переноса с Symfony

Интернет-магазин

Переезд магазина с Symfony

Разобрали сущности Doctrine и связи, выгрузили 13 000 товаров и заказы, настроили обмен с 1С.

100%Перенос товаров
×2Скорость
6 недельСрок
B2B-портал

Перенос портала с Symfony

Перенесли сложную доменную модель и кабинеты, сохранили маршруты 301-редиректами.

0 чПростой
900+Кабинетов
8 недельСрок
Каталог

Уход с Symfony ради экономии

Перенесли 19 000 записей в инфоблоки, снизили стоимость поддержки сайта втрое.

19000+Записей
нетПотеря позиций
5 недельСрок
Интерактив · скидка за игру

Игра «Перенос без потерь»

Проведите сайт по каналу миграции: прыгайте через 404 и Легаси, ныряйте под DDoS и спам, собирайте страницы, щит и бэкап. Чем дальше добежите — тем выше скидка на перенос, и она автоматически попадёт в заявку.

Гарантии и страховка

Как мы переносим Symfony-проект без экспорта

Самые частые страхи при уходе с Symfony — и что мы делаем.

Данные

У Symfony нет экспорта в Битрикс, как вы достанете данные

Наш ответ

Готовый экспорт не нужен. Мы разбираем сущности Doctrine, их аннотации и связи, и выгружаем данные через Doctrine или прямой SQL. Так переносится контент, каталог, заказы и клиенты любого проекта на Symfony.

Доменная модель

У нас сложная доменная модель, перенесётся ли она

Наш ответ

Да. По сущностям и их связям мы восстанавливаем доменную модель проекта и переносим её в инфоблоки и привязки Битрикс. Сложные сценарии заранее описываем в плане переноса и переносим на API Битрикс.

SEO-позиции

Боюсь, что после переезда просядут позиции и трафик

Наш ответ

Сохраняем структуру URL или настраиваем 301-редиректы со старых маршрутов на новые, переносим мета-теги, sitemap и robots. Если позиции просели по нашей вине — дорабатываем бесплатно до восстановления.

Простой

Не хочу, чтобы сайт лежал во время переезда

Наш ответ

Старый сайт на Symfony работает весь период подготовки. Новый собираем параллельно на стенде, переключение домена делаем в окно минимальной нагрузки.

Бесплатно

Бесплатный аудит проекта на Symfony

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

Почему мы

На что можно рассчитывать по договору

Читаем Doctrine

Разбираем сущности, аннотации и связи Symfony, восстанавливаем доменную модель.

Выгрузка без экспорта

Снимаем данные через Doctrine или SQL по структуре ваших сущностей.

Дешевле в поддержке

Типовой сайт на Битрикс дешевле, чем кастомный проект на тяжёлом фреймворке.

Код и данные — ваши

Передаём исходники, доступы и документацию, привязки к подрядчику не возникает.

Экспертный взгляд

Почему перенос с Symfony доверяют нам — и как мы страхуем результат

Переезд с Symfony — это всегда зона повышенного риска, и в большей степени, чем при миграции с обычной CMS. У типовой системы есть готовые форматы экспорта и предсказуемая структура, а у проекта на Symfony нет ничего стандартного: своя доменная модель, свои сущности, своя схема базы. Один неверный шаг с редиректами способен обнулить позиции, которые вы зарабатывали годами, а неполный разбор сущностей — потерять часть данных в самый ответственный момент. Поэтому ключевой вопрос при миграции с Symfony не «сколько это стоит», а «кто и как достанет и перенесёт ваши данные». Ниже мы честно разбираем проблемы, с которыми сталкивается бизнес при переезде, и показываем, как именно мы их закрываем.

Главная сложность: у Symfony нет экспорта в Битрикс

Это первое возражение, которое мы слышим почти всегда: проект написан под себя, и из него непонятно как достать данные. Готовый экспорт действительно не нужен и не существует — и это нормально. Мы работаем иначе: разбираем сущности Doctrine, их аннотации и связи между ними, восстанавливаем по ним структуру базы и выгружаем данные напрямую — либо через слой Doctrine, либо прямым SQL по схеме базы. Так переносится контент, каталог, заказы и клиенты любого проекта на Symfony, каким бы кастомным он ни был. Сущности — это и есть документация ваших данных: по ним мы видим, какие таблицы, поля и связи существуют, и выгружаем содержимое без догадок и потерь.

Проблема вторая: страх потерять данные

Каталог из тысяч товаров, история заказов за несколько лет, база клиентов с накопленными скидками — всё это критичные активы, потеря которых дороже самого переезда. Мы исключаем потерю данных процедурой сверки. Сначала выгружаем данные на тестовый стенд Битрикс, затем сравниваем количество записей по каждой сущности с исходной базой — товары, категории, свойства, заказы и клиенты, строка к строке, число к числу. Только когда цифры совпадают и выборочная проверка карточек подтверждает корректность, мы переходим к боевому переключению. Перед стартом снимаем полный бэкап старого проекта и базы, чтобы в любой момент был путь назад.

Проблема третья: сложная доменная модель

Часто на Symfony собирают не просто сайт, а систему с собственной бизнес-логикой: расчёты цен, согласования, статусы, права доступа. Заказчики боятся, что эта логика не переживёт переезда. Мы подходим к ней методично: по сущностям и их связям восстанавливаем доменную модель проекта и переносим её в инфоблоки, разделы и привязки Битрикс, а нестандартные сценарии реализуем на API и модулях платформы. Сложные части мы заранее описываем в плане переноса и согласуем с вами, чтобы не было сюрпризов. Там, где логика действительно уникальна и оправданно живёт на Symfony, мы предлагаем гибридный сценарий — об этом ниже.

Проблема четвёртая: страх потерять позиции и трафик

Большинство владельцев сайтов опасаются переезда из-за одной истории — поменяли платформу, сайт выпал из выдачи, трафик рухнул на месяцы. Так бывает, когда переносом занимается разработчик, который не отвечает за SEO. Мы подходим иначе: SEO — это отдельный обязательный пласт переноса. Перед стартом выгружаем все индексируемые маршруты старого сайта, строим карту соответствий старых и новых URL и настраиваем 301-редиректы для каждой страницы. Мета-теги, заголовки, alt-тексты, микроразметка, sitemap.xml и robots.txt переезжают вместе с контентом. После запуска отслеживаем индексацию в Яндекс.Вебмастере и Google Search Console и оперативно правим то, что нашли роботы. Если позиции просели по нашей вине — дорабатываем сайт бесплатно до восстановления. Это страховка SEO, зафиксированная в договоре.

Проблема пятая: простой и непредсказуемый бюджет

Сайт, который лежит во время переезда, — это прямые убытки: брошенные корзины, упущенные заявки. Мы строим процесс так, чтобы простоя практически не было: старый сайт на Symfony работает весь период подготовки, новый собирается параллельно на стенде, а переключение домена выполняется в окно минимальной нагрузки. Что касается бюджета — мы фиксируем состав работ и стоимость до старта. Цена переноса с Symfony складывается из понятных факторов: числа сущностей и связей, объёма данных и нужных интеграций. Всё, что выходит за рамки согласованного ТЗ, обсуждается и оценивается отдельно, а не появляется в счёте сюрпризом.

Как устроен наш процесс переноса

Мы работаем по отлаженной методике, и на каждом этапе у вас есть точка контроля.

  • Аудит кода и сущностей. Изучаем проект, бандлы Symfony, сущности Doctrine, аннотации и связи, оцениваем объём данных и составляем план переноса с картой редиректов и фиксированной сметой.
  • Выгрузка из базы. Снимаем данные через Doctrine или прямой SQL по структуре ваших сущностей и схемы базы.
  • Маппинг и импорт. Сопоставляем сущности и поля со свойствами инфоблоков Битрикс и загружаем данные на тестовый стенд.
  • Дизайн и интеграции. Переносим существующий дизайн или создаём новый под бренд, настраиваем формы и обмен с 1С и CRM.
  • SEO и редиректы. Настраиваем 301-редиректы со старых маршрутов, переносим мета-теги, sitemap и robots, проверяем карту на отсутствие битых ссылок.
  • Запуск и контроль. Переключаем домен без простоя, следим за индексацией в Вебмастере, дорабатываем мелочи и сопровождаем сайт.

Почему именно Битрикс, а не другой фреймворк

Битрикс — промышленный стандарт российского рынка с готовым обменом с 1С, встроенной защитой по 152-ФЗ, хранением данных в РФ и огромным рынком специалистов. После переезда вы не остаётесь заложником одной дорогой команды: проект сможет вести любой компетентный веб-специалист, а не только senior-разработчик Symfony. Платформа масштабируется от сайта до нагруженного B2B-портала, расширяется модулями и интеграциями, поддерживает персональные цены, личные кабинеты и сложные сценарии оптовых продаж. Для большинства бизнесов это не понижение уровня, а переход на инструмент, который дешевле в поддержке и удобнее в управлении контентом.

Когда переезжать не нужно — и мы скажем об этом прямо

Будем честны: миграция с Symfony оправдана не всегда. Если у вас действительно сложная высоконагруженная система с уникальной доменной логикой, сильной командой и Symfony выбран как технология осознанно — переносить её на Битрикс ради переноса не стоит. В таких случаях разумнее оставить ядро на Symfony, а на Битрикс перенести только витрину и каталог, связав их через API и обмен. На бесплатном аудите мы прямо скажем, если в вашем случае выгоднее остаться на фреймворке или выбрать гибридный сценарий. Нам важнее долгая репутация и рекомендации, чем разовая сделка любой ценой.

Что вы получаете на выходе

По завершении переезда у вас на руках быстрый сайт на 1С-Битрикс с сохранёнными позициями и трафиком, перенесёнными контентом, каталогом, заказами и клиентами, настроенным обменом с 1С, корректными 301-редиректами и актуальными мета-данными. Контентом управляет менеджер через удобную админку, а поддержку ведёт обычный веб-специалист вместо дорогой Symfony-команды. Мы передаём исходники, доступы и документацию — код и данные принадлежат вам, привязки к подрядчику не возникает. При желании вы продолжаете развивать проект с нами или с любой другой командой.

Логика реальных проектов: чему учат наши переезды с Symfony

За выполненные переезды с фреймворков мы вывели несколько закономерностей. Первая: качество переноса напрямую зависит от того, насколько аккуратно описаны сущности — у проектов с чистой доменной моделью выгрузка проходит быстро, у запущенных приходится дополнительно реконструировать связи по схеме базы, но непереносимых проектов в нашей практике не было. Вторая: сверка данных всегда находит расхождения, которые не видны на глаз, поэтому формальное сравнение чисел обязательно даже на «простых» каталогах. Третья: чем раньше начата работа с картой редиректов, тем спокойнее проходит запуск. Показательный пример из практики — переезд магазина с Symfony: мы разобрали сущности Doctrine и связи, выгрузили тринадцать тысяч товаров и заказы, настроили обмен с 1С, и витрина ускорилась вдвое. Другой случай — перенос B2B-портала с девятьюстами кабинетами: сложную доменную модель и личные кабинеты перенесли, маршруты закрыли 301-редиректами, простой составил ноль часов. Третий — уход с Symfony ради экономии: перенесли девятнадцать тысяч записей в инфоблоки и снизили стоимость поддержки втрое.

Перенос интернет-магазина с Symfony: на что обращаем внимание особо

Магазин — самый требовательный сценарий переезда с Symfony, потому что цена ошибки здесь максимальна: за каждым потерянным товаром или сломанным фильтром стоит недополученная выручка. На фреймворке каталог обычно описан собственными сущностями: Товар, Категория, Свойство, Торговое предложение, и связи между ними бывают нетривиальными. Мы переносим каталог вместе со структурой категорий, характеристиками и значениями, по которым работают фильтры, аккуратно восстанавливая иерархию из связей Doctrine. Отдельно следим за артикулами и привязкой к 1С, чтобы после переезда обмен подхватил номенклатуру без задвоений. История заказов переносится со статусами и составами, база клиентов — со скидками и сегментами. Платёжные и доставочные интеграции, которые на Symfony часто писались под проект вручную, мы заменяем штатными модулями Битрикс и обязательно тестируем сквозной сценарий покупки на стенде до запуска, чтобы первый же реальный заказ прошёл без сбоев.

Перенос B2B-портала и корпоративного сайта с Symfony

На Symfony нередко собирают именно B2B-системы, где обычного каталога мало: нужны персональные цены и прайс-листы под клиента, личные кабинеты с балансом и документами, роли и согласования, ограничения видимости каталога по группам. Вся эта логика на фреймворке живёт в коде и сущностях, и при переезде её важно не просто скопировать, а воспроизвести средствами Битрикс так, чтобы менеджеры и клиенты продолжили работать привычным образом. Мы разбираем доменную модель, выделяем бизнес-правила и переносим их на штатные механизмы платформы — группы пользователей, ценовые политики, торговый каталог, а нестандартные сценарии реализуем на API. Для корпоративного сайта на первый план выходит сохранность контента и SEO-структуры: десятки и сотни статей, кейсов и посадочных страниц должны переехать с правильными адресами и мета-данными. Именно здесь опыт переноса сложных проектов отличает аккуратную миграцию от долгой и болезненной переделки.

Чем мы отличаемся от студии, которая «тоже умеет переносить»

Перенос с фреймворка часто берут как побочную услугу: главное — сверстать новый сайт, а выгрузку данных и редиректы делают по остаточному принципу, не вникая в чужой код. Мы специализируемся именно на миграции на 1С-Битрикс и умеем читать чужие проекты: разбираем сущности Doctrine, аннотации и связи, восстанавливаем доменную модель и достаём данные напрямую из базы. Это разница между «перенесли что смогли и надеемся, что обошлось» и «разобрали структуру, выгрузили всё, сверили цифры, проконтролировали выдачу и отвечаем за результат». Мы не учимся на вашем проекте — мы уже проходили путь разбора кастомных приложений и знаем, где у таких переездов подводные камни.

Что вы теряете, откладывая переезд с Symfony

Каждый месяц на тяжёлом фреймворке ради типового сайта — это переплата за поддержку, зависимость от дорогих и дефицитных senior-разработчиков и невозможность быстро менять контент силами маркетинга. Любая правка превращается в задачу программисту, а развитие проекта упирается в доступность одного-двух специалистов. Чем дольше откладывается переезд, тем больше данных и истории придётся переносить и тем выше риск, что человек, который писал эти сущности, окончательно покинет проект и разбираться придётся с нуля. Переход на Битрикс снимает эти ограничения сразу: дешёвая поддержка, управление контентом без кода, обмен с 1С и встроенные инструменты маркетинга. Вопрос обычно не в том, переезжать ли, а в том, чтобы сделать это вовремя и правильно.

Давайте обсудим ваш проект

Дайте доступ к коду и базе или опишите проект — мы проведём бесплатный аудит сущностей Doctrine, оценим сложность выгрузки, объём данных, риски переноса, сроки и стоимость, и пришлём смету в течение рабочего дня. Вы получите понятный план миграции без обязательств и сможете спокойно решить, переезжать ли сейчас, выбрать гибридный сценарий или остаться на Symfony. Перенос с Symfony на 1С-Битрикс с сохранением позиций, данных и без простоя — это управляемый процесс, если им занимается команда, которая умеет читать чужой код и отвечает за результат.

Вопросы и ответы

Частые вопросы о переносе с Symfony

Как вы перенесёте проект, если у Symfony нет экспорта в Битрикс? +

Готовый экспорт не нужен. Мы разбираем сущности Doctrine, их аннотации и связи между ними и выгружаем данные через Doctrine или прямой SQL. Так переносится контент, каталог, заказы и клиенты любого проекта на Symfony, каким бы кастомным он ни был.

Что такое сущности Doctrine простыми словами? +

Простыми словами: сущность Doctrine — это описание объекта данных (товар, заказ, клиент) в виде PHP-класса, который связан с таблицей базы. По сущностям и их аннотациям мы понимаем, какие у вас таблицы, поля и связи, и выгружаем содержимое базы без догадок.

Что такое миграция базы данных простыми словами? +

Это перенос всех записей сайта — страниц, товаров, заказов, пользователей — из базы Symfony в структуру нового сайта. Сначала по сущностям Doctrine разбираем, как устроены ваши данные и связи, а затем переносим их в инфоблоки Битрикс так, чтобы ничего не потерялось.

Вы выгружаете данные через Doctrine или напрямую через SQL? +

Зависит от проекта. Если доменная модель чистая и сущности описаны аккуратно, удобнее выгружать через слой Doctrine. Для запущенных или нестандартных схем читаем базу напрямую через SQL. Часто комбинируем оба способа, чтобы достать данные полно и корректно.

Что делать, если сущности описаны небрежно или документации нет? +

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

У нас сложная доменная модель, вы её перенесёте? +

Да. По сущностям Doctrine и их связям мы восстанавливаем доменную модель проекта и переносим её в инфоблоки и привязки Битрикс. Сложные сценарии и расчёты заранее описываем в плане переноса и реализуем на API и модулях Битрикс.

Перенесётся ли бизнес-логика — расчёты, статусы, согласования? +

Стандартную логику воспроизводим средствами Битрикс, а нестандартные сценарии переносим на API и модули платформы. Сложные части мы заранее описываем в плане и согласуем с вами, чтобы не было сюрпризов на запуске.

Можно перенести только витрину, а ядро оставить на Symfony? +

Да. Если на Symfony у вас сложная система с уникальной логикой, мы можем перенести на Битрикс только сайт и каталог, а ядро оставить и связать с Битрикс через API и обмен. На аудите подберём оптимальный гибридный вариант.

Что такое инфоблок Битрикс и почему данные едут именно туда? +

Инфоблок — это гибкая структура хранения данных в 1С-Битрикс: каталог, новости, разделы со своими свойствами. Сущности Symfony с их полями и связями ложатся в инфоблоки естественно, поэтому после переезда данными удобно управлять из админки без программиста.

Сохранятся ли позиции после переезда? +

Да, при правильном переносе. Сохраняем структуру URL или настраиваем 301-редиректы со старых маршрутов на новые адреса, переносим мета-теги, sitemap.xml и robots.txt, контролируем индексацию в Вебмастере. Если позиции просели по нашей вине — дорабатываем бесплатно.

Что такое 301-редирект и зачем он при переезде? +

Простыми словами: 301-редирект — это постоянное перенаправление со старого адреса страницы на новый. Он сообщает поисковикам, что страница переехала навсегда, и передаёт ей накопленный вес, поэтому пользователи и роботы по старым ссылкам попадают на нужные страницы, а позиции сохраняются.

Как вы закрываете старые маршруты Symfony редиректами? +

Перед переездом выгружаем все индексируемые маршруты старого сайта и строим карту соответствий старых и новых URL. По ней настраиваем 301-редиректы на каждую страницу и проверяем карту на отсутствие битых ссылок и ошибок 404.

Перенесёте ли вы мета-теги и микроразметку? +

Да. Заголовки title, описания description, заголовки H1, alt-тексты изображений и микроразметку переносим вместе с контентом, чтобы сниппеты в выдаче и релевантность страниц не изменились после переезда.

Сколько стоит и сколько занимает перенос? +

Зависит от числа сущностей и объёма данных: сайт на Symfony — от 120 000 ₽ и от 3 недель, магазин — от 220 000 ₽ и от 4 недель, сложный проект — от 400 000 ₽. Есть опция срочного переноса. Точную смету присылаем после бесплатного аудита.

Из чего складывается цена переноса с Symfony? +

Из числа сущностей и связей, объёма данных и нужных интеграций. Отдельно оцениваются срочный перенос, разбор и документирование сущностей и настройка обмена с 1С. Все факторы показываем в смете прозрачно.

Может ли смета вырасти в процессе? +

Состав работ и стоимость мы фиксируем до старта. Всё, что выходит за рамки согласованного ТЗ, обсуждается и оценивается отдельно по согласованию, а не появляется в счёте сюрпризом.

Почему перенос с Symfony дороже, чем с обычной CMS? +

Потому что у фреймворка нет готового экспорта: данные приходится доставать инженерно, разбирая сущности и схему базы. Зато после переезда вы экономите на поддержке, переходя с дорогой Symfony-команды на обычного веб-специалиста.

Будет ли сайт недоступен во время переноса? +

Нет. Старый сайт на Symfony работает и принимает заявки весь период подготовки. Новый собираем параллельно на тестовом стенде, а переключение домена делаем в согласованное окно минимальной нагрузки — простоя практически нет.

Как вы гарантируете, что данные не потеряются? +

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

Нужно ли участие нашей команды или разработчиков Symfony? +

Минимально. От вас нужны доступы к коду и базе и ответы на вопросы по структуре данных. Участие ваших Symfony-разработчиков необязательно — мы умеем читать чужой код сами, но если они на связи, разбор сущностей идёт быстрее.

Что происходит сразу после запуска нового сайта? +

Отправляем новую карту сайта в Яндекс.Вебмастер и Google Search Console, отслеживаем индексацию и ошибки сканирования, проверяем работу форм и интеграций и оперативно правим то, что нашли роботы или пользователи.

Будете ли вы сопровождать сайт после запуска? +

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

Кому принадлежат код и данные после переезда? +

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

Кто сможет поддерживать сайт после ухода с Symfony? +

Любой обычный веб-специалист по Битрикс. В этом и смысл переезда: вместо дорогих и дефицитных senior-разработчиков Symfony проект ведёт широкий рынок исполнителей, а контентом управляет менеджер без кода.

Можно ли при переносе обновить дизайн? +

Да. Можно перенести существующий дизайн один в один или создать новый под бренд при переезде. Редизайн при переносе — отдельная опция, которую закладываем в смету и согласуем макетами заранее.

Начать проект

Рассчитаем перенос с вашего Symfony-проекта за 1 день

Опишите проект и дайте доступ к коду и базе — проведём бесплатный аудит сущностей Doctrine и пришлём смету переноса в течение рабочего дня.

  • Ответим в течение рабочего дня
  • Бесплатный аудит процессов и расчёт
  • NDA и фиксированная смета