Администрирование · 9 мин
Где хранятся файлы обмена 1С с Битрикс и как их найти
Разбираем, где хранятся файлы обмена 1С с Битрикс: каталоги на сервере сайта и в 1С, настройки папки выгрузки, поиск зависших XML и очистка временных файлов.
При обмене данными между 1С и сайтом на «1С-Битрикс: Управление сайтом» формируются файлы формата CommerceML — XML-документы с каталогом товаров, ценами, остатками и заказами, а также архивы с изображениями. Эти файлы создаются на стороне 1С, передаются по HTTP на сайт и там обрабатываются. Понимание того, где они лежат на каждом этапе, помогает диагностировать сбои обмена, находить зависшие выгрузки и не допускать переполнения диска.
Конкретные пути зависят от настроек модуля обмена в 1С, версии конфигурации и настроек интеграции на стороне Битрикса. Единого «стандартного» каталога нет, но есть типовые расположения, которые стоит проверить в первую очередь, и служебные таблицы, в которых фиксируются имена файлов обмена.
Как устроен обмен и где появляются файлы
Обмен 1С с Битриксом работает по протоколу CommerceML. Сеанс обмена начинается с авторизации: 1С обращается к скрипту /bitrix/admin/1c_exchange.php, получает параметры сессии, затем последовательно передаёт файлы — сначала XML с данными, потом архивы с картинками. На каждый запрос сайт отвечает служебным словом: success, progress или failure с текстом ошибки.
Файлы физически появляются в двух местах. В 1С — в момент формирования выгрузки, если настроена выгрузка в каталог на диске. На сайте — в момент приёма данных, когда скрипт обмена сохраняет переданное содержимое во временный файл перед обработкой. После успешного импорта временные файлы на сайте, как правило, удаляются автоматически, поэтому «в живую» их можно увидеть только во время активного сеанса обмена или при сбое.
Где файлы лежат на стороне сайта (Битрикс)
Основное расположение — подкаталог внутри папки загрузок сайта. По умолчанию Битрикс принимает файлы обмена в каталог /upload/1c_exchange/ относительно корня сайта. Имена файлов формируются динамически и могут выглядеть как случайные строки, но исходные имена (import.xml, offers.xml) сохраняются в параметрах запроса и логах.
Если обмен настроен через ZIP-архивы, рядом могут оставаться распакованные каталоги с изображениями товаров. При обрыве соединения или ошибке обработки эти остатки не удаляются и со временем накапливаются, занимая заметное место на диске — особенно при большом каталоге с фотографиями.
Точный путь можно посмотреть в настройках интеграции с 1С в административном разделе Битрикса (раздел «Магазин» → «Интеграция с 1С» для модуля интернет-магазина либо настройки соответствующего модуля обмена). Там же задаются ограничения на размер файла за один шаг и использование ZIP.
Где файлы лежат на стороне 1С
В типовых конфигурациях (Управление торговлей, УНФ, Комплексная автоматизация, ERP) узел обмена с сайтом настраивается в разделе синхронизации данных. В карточке узла есть два режима: выгрузка напрямую на сайт по HTTP и выгрузка в каталог на диске. Во втором случае путь к папке указывается явно — именно туда попадают import.xml, offers.xml и архивы с картинками.
Если выбран режим обмена с сайтом напрямую, 1С формирует файлы во временном каталоге сеанса пользователя (например, внутри %TEMP% на Windows) и удаляет их после завершения. Найти их можно, открыв временную папку во время выполнения обмена, либо временно переключив узел на выгрузку в каталог для диагностики.
Для обмена заказами действует та же логика: файл с заказами сайта скачивается во временное хранилище и загружается в 1С как документы. Исходный XML обычно не сохраняется, но его содержимое можно увидеть в журнале обмена или включив расширенное логирование.
- 1Откройте раздел синхронизации данных (Администрирование → Синхронизация данных).
- 2Найдите узел обмена с сайтом и откройте его настройки.
- 3Проверьте режим обмена: «Выгрузка на сайт» или «Выгрузка в каталог».
- 4При выгрузке в каталог скопируйте указанный путь и откройте его в проводнике.
- 5При выгрузке на сайт временно переключитесь на каталог и выполните обмен, чтобы получить файлы для анализа.
Как найти зависшие файлы обмена на сервере
Если сайт работает на Linux-хостинге, быстрее всего искать остатки обмена через командную строку по каталогу загрузок. Это безопасная операция чтения, она ничего не меняет на сайте.
Диагностика сбоев через логи и таблицы обмена
На стороне Битрикса ход обмена можно отслеживать по ответам скрипта 1c_exchange.php — при включённом режиме отладки он возвращает подробные сообщения на каждый шаг. Дополнительно сведения о файлах и статусах фиксируются в служебных таблицах модуля обмена (их состав зависит от версии модуля и конфигурации).
На стороне 1С история обменов хранится в регистрах результатов обмена данными: там видны дата сеанса, действие (отправка/получение), статус и текст ошибки. По этим записям удобно определить, на каком этапе прервался обмен — при выгрузке каталога, передаче картинок или загрузке заказов.
Как проверить результат
Пустой или содержит только файлы текущего сеанса
Накоплены старые XML и архивы за прошлые даты
success на каждом шаге
failure с текстом ошибки или обрыв соединения
Последний сеанс завершён без ошибок
Статус «Ошибка» или незавершённый сеанс
Объём upload стабилен между обменами
Объём растёт от обмена к обмену
Типовые проблемы и частые ошибки
Самая распространённая ситуация — обмен «зависает» из-за ограничения времени выполнения скрипта на хостинге, а недозагруженные файлы остаются в каталоге обмена. Вторая типичная причина накопления мусора — обрывы соединения при передаче больших ZIP-архивов с изображениями.
Если обмен стабильно прерывается на больших файлах, уменьшите размер порции выгрузки в настройках интеграции и включите передачу в ZIP — это снижает нагрузку на соединение и уменьшает вероятность обрыва.
Что важно запомнить
Файлы обмена живут в двух точках: во временном каталоге /upload/1c_exchange/ на сайте и в папке, заданной в узле обмена 1С (либо во временном каталоге сеанса). После успешного обмена они удаляются автоматически; накопление старых файлов — признак сбоев, который нужно разбирать по логам, а чистку проводить только вне сеансов обмена и только в служебном подкаталоге.
Частые вопросы
Почему в папке /upload/1c_exchange/ пусто, хотя обмен только что прошёл?
Это нормальное поведение: после успешной обработки Битрикс удаляет временные файлы. Увидеть их можно только во время активного сеанса обмена или если сеанс завершился с ошибкой.
Как получить XML-файл выгрузки, чтобы посмотреть его содержимое?
Переключите узел обмена в 1С в режим «Выгрузка в каталог», укажите папку и выполните обмен — файлы import.xml и offers.xml останутся на диске. После диагностики режим можно вернуть обратно.
Можно ли изменить каталог приёма файлов на стороне Битрикса?
Да, путь задаётся настройками модуля обмена и константами. После изменения проверьте, что у веб-сервера есть права на запись в новый каталог, иначе обмен будет падать на этапе загрузки.
Чем опасны зависшие файлы обмена, кроме занятого места?
XML-файлы содержат цены, остатки и данные заказов. Если каталог доступен по HTTP и не защищён, эти сведения может получить посторонний. Устаревшие файлы следует удалять, а доступ к служебным каталогам — ограничивать.
Обмен падает с ошибкой записи файла — с чего начать?
Проверьте права на каталог обмена, свободное место на диске и лимиты веб-сервера на размер загружаемых файлов (post_max_size, upload_max_filesize). Затем повторите обмен и посмотрите текст ошибки в ответе скрипта обмена.