Ошибка при создании файла битрикс

Здравствуйте.Мне достался готовый сайт. Версия - "1С-Битрикс: Управление сайтом 11.5.1"Контент лежит прямо в файле index.php. Когда пытаюсь его отредактировать (захожу в "Файлы и папки" и нахожу в поиске index.php), получаю "Ошибка при создании файла". Поначалу подумалось, что дело в правах, поставила на index.php права 777, всё равно такую же ошибку получаю. М.б. вместе с index.php ещё какие-то файлы редактируются и проблема в них?
 

Пользователь 92039

Посетитель

Сообщений: 54
Баллов: 4
Авторитет:

1

Рейтинг пользователя:

0

Регистрация: 23.05.2011

Здравствуйте.

Мне достался готовый сайт. Версия — «1С-Битрикс: Управление сайтом 11.5.1»
Контент лежит прямо в файле index.php. Когда пытаюсь его отредактировать (захожу в «Файлы и папки» и нахожу в поиске index.php), получаю «Ошибка при создании файла». Поначалу подумалось, что дело в правах, поставила на index.php права 777, всё равно такую же ошибку получаю. М.б. вместе с index.php ещё какие-то файлы редактируются и проблема в них?

 

Пользователь 88565

Посетитель

Сообщений: 118
Баллов: 9
Авторитет:

0

Рейтинг пользователя:

0

Регистрация: 13.04.2011

 

Пользователь 92039

Посетитель

Сообщений: 54
Баллов: 4
Авторитет:

1

Рейтинг пользователя:

0

Регистрация: 23.05.2011

#3

0

10.04.2013 12:52:17

Цитата
al.builov пишет:
Права на доступ продукта посмотри.http://www.1c-bitrix.ru/products/cms/security/access.php

У меня в «Структуре сайта» в «Контенте» нет пункта «Управление». Наверное, документация для более поздней версии системы.
Права кроме как на сам файл по FTP нужно ещё и в системе ставить?

 

Пользователь 95726

Эксперт

Сообщений: 742
Баллов: 61
Авторитет:

1

Рейтинг пользователя:

0

Регистрация: 06.07.2011

#4

0

10.04.2013 13:10:37

Цитата
Topacio пишет:
Права кроме как на сам файл по FTP нужно ещё и в системе ставить?

Так и редактируй по FTP.  Сдался тебе этот редактор.

Цитата
Topacio пишет:
М.б. вместе с index.php ещё какие-то файлы редактируются и проблема в них?

М.б. если включаемую область редактируешь например.

 

Пользователь 92039

Посетитель

Сообщений: 54
Баллов: 4
Авторитет:

1

Рейтинг пользователя:

0

Регистрация: 23.05.2011

#5

0

10.04.2013 13:15:50

Цитата
Suntechnic пишет:

Цитата
Topacio пишет:
Права кроме как на сам файл по FTP нужно ещё и в системе ставить?

Так и редактируй по FTP. Сдался тебе этот редактор.

Это не для меня всё делается, а для сеошника, который привык работать с редактором. Так что надо разобраться.
По поводу включаемой области — а если редактируется файл index.php разве затрагиваются файлы, которые он включает?

 

Пользователь 95726

Эксперт

Сообщений: 742
Баллов: 61
Авторитет:

1

Рейтинг пользователя:

0

Регистрация: 06.07.2011

Ну если из админки, то нет. А если непосредственно со страницы, то да.

 

Пользователь 92039

Посетитель

Сообщений: 54
Баллов: 4
Авторитет:

1

Рейтинг пользователя:

0

Регистрация: 23.05.2011

Я редактирую из админки.
«Ошибка при создании файла» возникает при попытке отредактировать любой файл из корня сайта. Когда захожу в любую папку и пытаюсь отредактировать файлы там, то всё нормально. Я уже какие только права не ставила, и хозяина файла меняла с апача на рут, никакого толку.
М.б. дело в хостинге? Или из панели управления права на корневые файлы можно поправить? Подскажите, кто сталкивался!

 

Пользователь 173519

Эксперт

Сообщений: 493
Баллов: 51
Авторитет:

0

Рейтинг пользователя:

1

Регистрация: 30.03.2013

На хостинге clodo имею аналогичную ошибку, создал включаемую область на сайте по фтп, в структуре сайта показывает полный доступ на права системы, но при редактировании пишет «Ошибка при создании файла».

Пришлось создавать файл через админку, тогда все работает.

Разработка интернет магазина под ключ на 1С-Битрикс www.electroid.org, интеграция битрикс и 1С.

 

Пользователь 37620

Эксперт

Сообщений: 2549
Баллов: 226
Авторитет:

6

Рейтинг пользователя:

7

Регистрация: 13.02.2009

для СПАСИБО на форуме есть КНОПКА!

#9

1

25.09.2013 17:26:52

Цитата
Дмитрий Ипатов пишет:
На хостинге clodo имею аналогичную ошибку, создал включаемую область на сайте по фтп, в структуре сайта показывает полный доступ на права системы, но при редактировании пишет «Ошибка при создании файла».

Пришлось создавать файл через админку, тогда все работает.

такое бывает, если у вас веб сервер и фтп под разными юзерами работают.

Сайт Startup’а — адаптивная Bootstrap вёрстка, композит, микроразметка. бесплатно

 

Пользователь 266000

Заглянувший

Сообщений: 14
Авторитет:

1

Рейтинг пользователя:

0

Регистрация: 23.10.2014

#10

0

19.07.2020 20:41:11

Здравствуйте!
В меню добавляю пункт, связываю с файлом
пишет ошибка при создании файла.
ранее другой пункт меню создавал не было ошибки.
создаю со стороны сайта при включенном режиме правки.
подскажите как быть.
_________________________________
Помогите «захватить» мир, Hello

 

Пользователь 1497169

Заглянувший

Сообщений: 1
Авторитет:

0

Рейтинг пользователя:

0

Регистрация: 01.10.2020

#11

0

24.08.2022 13:02:24

Добрый день.

Столкнулись с аналогичной проблемой.
При попытке настроить меню сайта возникает ошибка «Ошибка при создании файла», как на скриншоте выше. Такая же ошибка возникает при попытке настроить SEO через системное меню в режиме правки.(Изменить страницы > Заголовок и свойства страницы). При переходе из режима правки в панель управления ошибка не возникает, но внесённые изменения не сохраняются.

 

Пользователь 1947629

Эксперт

Сообщений: 864
Баллов: 177
Авторитет:

0

Рейтинг пользователя:

0

Регистрация: 18.04.2018

#12

0

24.08.2022 16:01:59

место кончилось?

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

Первое что необходимо сделать — это проверить права на файлы и папки в нужном каталоге. Права на папку должны быть 755, на файлы 664. Ни в коем случае не выставляйте права 777 на папки или файлы, даже на время. 

В моём случае этот метод не сработал, я стал копать дальше. Нашел такой совет. в файле /bitrix/php_interface/dbconn.php установить такие константы. 

define( "BX_FILE_PERMISSIONS", 0660 );

define( "BX_DIR_PERMISSIONS", 0775 );

@umask( ~BX_DIR_PERMISSIONS );

@ini_set( "memory_limit", "512M" );

Но этого не потребовалось, т.к. эти значения уже были заданы и по идее всё должно было работать. На одном из форумов посоветовали изменить права доступа и владельца к нужной категории через консоль. Но я посчитал, что если всё до этого работало, то не нужно так далеко залазить, проблема явно была в не в этом, для Вас приведу код в котором можно изменить права доступа к каталогам и файлам через консоль. Говорят может помочь. 

find . -type d -exec chmod 775 { } ;

find . -type f -exec chmod 664 { } ;

В моём случае решение оказалось куда проще.  Все сайты лежали в корневой директории, один из них являлся общим ядром. Но по какой-то причине прекратился общий доступ к «главному сайту» и всё что нужно было сделать — это открыть доступ.

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

  1. Зайдите в нужную директорию
  2. В верхней части экрана нажмите на кнопку “Инструменты” -> “Настроить общий доступ к текущей директории”: 
  3. Установите переключатели “Чтение и запись” и “Включая вложенные папки”, нажмите кнопку “Открыть доступ”: 

Если представленные варианты не принесли желаемого результата,  то пишите в комментарии, будет время, что-нибудь придумаем. 

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

Инфоблоки

Решение типовых проблем не требует вмешательства программистов. Контент-менеджер в большинстве случаев может разрешить их самостоятельно. Самые частые ошибки совершаются при работе с информационными блоками. Это естественно, так как в инфоблоках хранится большая часть информации на сайте. Описание ошибок даётся в формате: Проблема > ошибка > решение, чтобы вам было проще перейти к исправлению ситуации.

Типовые проблемы:

  • Выводится сообщение: У вас нет прав на просмотр.
  • На странице не выводится информация, добавленная в поля свойств элемента инфоблока.
  • В форме добавления элементов не видны добавленные свойства инфоблока.
  • Как добавить новые свойства в форму создания элемента.
  • Выводится сообщение: Неверный тип файла.
  • Выводится сообщение: Превышен максимальный размер.
  • Выводится сообщение: элемент не найден.
  • Количество сообщений (тем форума, новостей, количество фотографий и т.д.) на странице не совпадает с количеством, указанном в настройке компонента.

  • Проблема: выводится сообщение:

    «У вас нет прав на просмотр …»




    .

    Ошибка: ненастроенные права доступа к детальной информации: новостей и фотогалереи.

    Решение: Настроить группы пользователей для доступа в настройках комплексного компонента в группе параметров Дополнительные настройки:

    Нажмите на рисунок, чтобы увеличить

  • Проблема: На странице не выводится информация, добавленная в поля свойств элемента инфоблока. Например, добавляется информация в поле Производитель и Материал, а она

    не видна у товара

    Нажмите на рисунок, чтобы увеличить


    .

    Ошибка: в настройках компонента не указаны свойства инфоблока, которые должны отображаться на данной странице.

    Решение: В настройках параметров инфоблока указать какие свойства должны отображаться. Для этого надо сначала понять на какой странице не выводятся нужные свойства: на детальной странице товара или на странице списка товаров. Отличить не трудно: на странице списка товаров выводятся все товары раздела. На странице детального отображения товара — только выбранный товар. Соответственно нужно выбирать свойства для показа в нужной секции настроек компонента.

    Нажмите на рисунок, чтобы увеличить

  • Проблема: В форме добавления элементов не видны добавленные свойства инфоблока.

    Ошибка: добавленное свойство либо неактивно, либо свойство не выведено в измененной (кастомизированной) форме добавления элемента.

    Решения:

    • активируйте свойство в форме редактирования инфоблока (Контент > Инфоблоки > Типы инфоблоков > _ваш_тип_инфоблока > _ ваш_инфоблок_) на закладке Свойства.

      Нажмите на рисунок, чтобы увеличить

    • добавьте новые свойства в форму создания элемента, как это рассказано в курсе Администратор. Базовый.

    Прав контент-менеджера на эти операции может не хватить. В этом случае обратитесь к администратору сайта.

  • Проблема: При создании элемента инфоблока не удается прикрепить файл, выводится сообщение: Неверный тип файла. При этом не происходит сохранение элемента.

    Ошибка: в свойствах инфоблока типа Файл не указаны разрешенные для загрузки форматы.

    Решение: разрешенные форматы указываются на закладке Свойства формы настройки инфоблока (Контент > Инфоблоки > Типы инфоблоков > _ваш_тип_инфоблока > _ ваш_инфоблок_). В строке свойства типа Файл с помощью кнопки […] вызовите форму детальной настройки свойства и в поле Типы загружаемых файлов введите нужные форматы или выберите форматы в выпадающем списке:

  • Проблема: Не удается прикрепить файл к элементу инфоблока, выводится сообщение: Превышен максимальный размер файла. При этом не происходит сохранение элемента.

    Ошибка: ограничения администратора сайта на размер загружаемого файла.

    Решение: Для снятия этого ограничения необходимо обратиться к администратору сайта.

  • Проблема: При переходе из списка элементов к странице детального просмотра появляется сообщение:

    Элемент не найден




    .

    Ошибка: неправильно формируется адрес страницы (не передается идентификатор открываемого элемента или в настройках компонента ошиблись).

    Решение: проверить настройки компонента в группе параметров Управление адресами страниц или обратиться к администратору сайта.

  • Проблема: Количество сообщений (тем форума, новостей, количество фотографий и т.д.) на странице не совпадает с количеством, указанном в настройке компонента.

    Ошибка: в настройках используемого компонента отмечена опция Использовать обратную постраничную навигацию. В этом режиме происходит вывод страниц в обратном порядке (последняя страница становится первой).

    Нажмите на рисунок, чтобы увеличить

    Решение: исправить настройки компонента в группе параметров Настройки постраничной навигации.

    Необязательная информация: зачем нужна обратная навигация

Назад в раздел

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

  • Ошибки на стороне веб-сервера
  • Ошибки при работе с файлами данных
  • Проблемы авторизации
  • Ошибки MySQL
  • Логические ошибки
  • Диагностика отладки
    • Отладка обмена на стороне 1С-Битрикс
    • Модуль отладки обмена от ИНТЕРВОЛГИ
  • Выводы

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

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

Мы выделили несколько групп ошибок:

  • проблемы авторизации;
  • ошибки на стороне сервера;
  • ошибки при работе с файлами данных;
  • ошибки MySQL;
  • логические ошибки.

Далее мы детально рассмотрим сами ошибки и способы их исправления.

Ошибки на стороне веб-сервера

К этой группе относятся ошибки, возникающие в подсистемах веб-сервера, отвечающих за выполнение PHP-кода. Обычно это: Nginx, Apache и сам интерпретатор языка PHP.

Возможны 2 варианта:

  • Ошибка действительно вызвана неоптимальными настройками Nginx/Apache/PHP. Если Вы чувствуете неуверенность в своем веб-сервере или совсем недавно на него переехали — привлеките администратора для проверки и изменения настроек.
Название ошибки Как исправить
Failed sending data to the peer (no headers, no data)‏.
  1. Увеличить значения параметров max_execution_time и memory_limit. в файле php.ini
  2. Перезагрузить сервер.
  3. Повторить выгрузку.
Получен пустой ответ сервера.
Ошибка нехватки памяти, например выводится сообщение: Fatal error : Allowed memory size of 67108864 bytes exhausted (tried to allocate 102401…)‏. Проверить настройку memory_limit в php.ini. Должно быть указано не менее 512Mb, увеличить значение и перезагрузить сервер. Или не изменяя настройки сервера сделать равным таймаут сервера и таймаут «1С-Битрикс: Управление сайтом» (страница Магазин > Настройки магазина > Интеграция с 1С, поле Интервал одного шага в секундах). Если проблема с нехваткой памяти, данное решение не подойдёт.
  • Подобная ошибка может маскировать либо некорректную настройку объема одной порции загружаемых данных (10К товаров за раз, например), либо логическую ошибку в программном коде (например, пересчет каких-нибудь значений в товарах по событию изменения).

Способы решения:

  1. уменьшать объем передаваемых за раз данных (проверить на 1 товаре, но лучше выставлять значение поочередно, 1, 100, 1000, 10000 и смотреть, какое значение оптимально для ваших настроек);
  2. временно закомментировать обработчики событий в файле /bitrix/php_interface/init.php, может быть они мешают обмену.

Ошибки при работе с файлами данных

Данные ошибки возникают при неверной настройке прав доступа к файлу. Отображение ошибок звучит следующим образом: «Ошибка открытия файла» и «Ошибка записи файла». Возможные причины и их решение:

Название ошибки Как исправить

Закончилось место на диске.

Удалить старые бэкапы или увеличить тариф на хостинге.

По ftp файлы загружаются, а через веб-интерфейс административного раздела сайта нет.

Обратиться в техническую поддержку хостинг-провайдера.

Не работает или некорректно работает сжатие данных при обмене.

Для начала можно попробовать выключить сжатие в настройках модуля обмена.

Также можно проверить работу функции zip_open на сервере

Откройте в браузере страницу http://<ваш_сайт>//bitrix/admin/phpinfo.php (Либо выполните команду

if (exist_function (“zip_open”)){ echo “OK”; }

В браузере отобразится таблица:

Для строки ZIP должно стоять «enabled».

Проблемы авторизации

Самая распространённая проблема, если пользователь не указал данные или указал их неверно.

Название ошибки Проблема / как исправить

«Не удалось получить данные с сервера. Проверьте правильность адреса сервера, порт, имя пользователя и пароль, а также настройки подключения к Интернет».

На сервере 1С установлено ПО, которое блокирует исходящие соединения, в этом случае при попытке обмена выдаётся ошибка. Исправляется добавлением адреса сайта в белый список ПО.

«Авторизация не выполнена.

Не удалось установить соединение с сервером. Проверьте имя пользователя и пароль».

Неверно указаны логин/пароль доступа к сайту.

Надо проверить, получается ли по указанному доступу зайти на сайт.

И проверить наличие редиректов при переходе по ссылке, например на https версию сайта.

Если по ссылке

http:// адрес сайта /bitrix/admin/1c_exchange.php

появляется сообщение, значит с логином и паролем всё в порядке.

Ошибки MySQL

Ошибки возникают при соединении с базой данных MySQL, настроенной на сайте.

Название ошибки Проблема / как исправить

[Illegal mix of collations (russian_swedish_ci,IMPLICIT) and (cp1251_general_ci,COERCIBLE) for operation ‘=’]

Конфликт кодировок. Причина ошибки — таблицы базы данных в одной кодировке, а сам база в другой. В данном случае база в russian и новые таблицы создаются в не russian. При выгрузке из «1С» создается временная таблица b_xml_tree в «некорректной» кодировке russian.

Логические ошибки

Ошибки пользователей неверно понимающих процесс обмена данными и, соответственно, неверно выполняющих какие-то действия.

Название ошибки Проблема / как исправить

Несовместимые версии модуля обмена и базовой конфигурации 1С.

Проверить на официальном сайте “1С-Битрикс” соответствие версий продуктов.

Если версии не совпадают, переустановить модуль обмена на стороне 1С

«Изменения товаров не зарегистрированы. Выгрузка товаров не произведена».

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

Также это сообщение выдаётся, если если в настройках Режима обмена данными с WEB-сайтом установлено: Выгружать только измененные объекты с момента последнего обмена. В этом случае это не ошибка, а выгрузки не произошло, потому что данные со стороны 1с не были изменены.

«Не удалось найти вид номенклатуры».

Ошибка появляется, если в «1С» нет видов номенклатуры «Услуга» и «Товар». Эти виды критичны для процесса обмена данными с сайтом. Решение – создать в «1С» указанные виды номенклатуры.

«Поле объекта не обнаружено».   

Не указаны соответствия для полей заказа в «1С-Битрикс: Управление сайтом». Проверьте настройки, заданные в закладке Экспорт в «1С:Предприятие» страницы Настройки > Настройки продукта > Настройки модулей > Интернет-магазин. Два поля «Полное Название» и «Название» критичны для 1С. Если их не задать, экспорт выполняться не будет. Настройка соответствий для разных типов плательщиков производится отдельно.

Данные выгружаются на сайт, но не обновляются.

На сайте используют контрольные суммы для ускорения обмена, а на стороне 1С программисты обычно забывают их пересчитывать, когда пытаются доработать модуль обмена. Проверяется отключением контрольных сумм на сайте. Обмен становится дольше, поэтому надо заставить специалиста 1С вернуть отключенную настройку.

Диагностика отладки

Мы применяем два инструмента отладки обмена между 1С и 1С-Битрикс.

Отладка обмена на стороне 1С-Битрикс

При настройке выгрузки необходимо проверить существование папки /upload/1c_catalog/. В эту папку будут загружаться файлы при обмене.

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

Включить «режим отладки» можно отредактировав файл dbconn.php. А именно, создать константу такого вида: define(«BX_CATALOG_IMPORT_1C_PRESERVE», true).

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

Модуль отладки обмена от ИНТЕРВОЛГИ

Для упрощения диагностики мы создали модуль отладки обмена.

Он встраивается между 1С и 1С-Битрикс и пишет логи того, что происходит при обмене. По этим логам можно выяснить, где ошибка и исправить её. Отображение логов происходит в административной части сайта.

Модуль отладки обмена от ИНТЕРВОЛГИ лучше логов со стороны 1С-Битрикс, потому что он:

  • следит за размером и в результате его работы не закончится место на сайте;
  • логирует обмен справочников и заказов;
  • логирует время обмена и время выполнения одного шага.

Выводы

Если не разбираться в вопросе и попытаться исправить обмен, то можно сделать только хуже и придётся или переписывать код модуля или ставить модуль обмена заново.

Наша компания обладает компетенциями в вопросе отладки обмена. Если у вас возникла подобная проблема, напишите, обсудим.

Вам может быть интересно:

  • Tutorial по стандартному и нестандартному обмену сайта с 1С. Часть первая: стандартный обмен и его хитрости.
  • Tutorial по обмену сайта с 1С. Часть вторая: зачем и как писать свой обмен с нуля на очередях и REST API.
  • Tutorial по обмену с 1С. Часть третья: Выжимаем максимум из стандарта. Что мы хотели бы знать 1000 проектов назад.
  • Tutorial по обмену с 1С. Часть четвертая: Обмен через промежуточную базу данных.
  • Tutorial по обмену с 1С. Часть пятая: Наш опыт настройки 1000 и 1 обмена.

Это штатная функция, которая уже давно присутствует начиная с версии программных продуктов «1С:Предприятие 8.1», редакция Управление торговлей (версия 10.3.4) и «1С-Битрикс: Управление сайтом» версии 6.5, в редакциях Малый бизнес, Бизнес и Большой бизнес.

Торговля в интернете не имеет никаких отличий от обычного ритейла в плане ведения бухгалтерской отчетности. В связи с этим возникает вопрос согласования продаж через интернет-магазин и проводки их по системе учета «1С». Для «1С-Битрикс: Управление сайтом» интеграция с «1С» – не проблема. Это штатная функция, которая уже давно присутствует начиная с версии продуктов «1С:Предприятие 8.1», редакция Управление торговлей (версия 10.3.4) и «1С-Битрикс: Управление сайтом» версии 6.5, в редакциях Малый бизнес, Бизнес и Большой бизнес.

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

Типовые проблемы можно сгруппировать примерно таким образом:

  • Ошибки с производительностью на стороне сервера
  • Ошибки при работе с файлами данных
  • Проблемы авторизации
  • Ошибки MySQL
  • Логические ошибки

Начнем по порядку.

Ошибки на стороне сервера

Ошибки на стороне сервера происходят в силу целого ряда причин, но общее у них то, что виноваты не столько настройки программ «1С-Битрикс: Управление сайтом» или «1С:Предприятие«, сколько настройки сервера или проблемы в линиях связи. В основном они «лечатся» соответствующей настройкой серверного оборудования и программного обеспечения. И только при невозможности этого – путем единовременного снижения объемов выгрузки. Для решения большинства этих проблем вам не избежать обращения к службе технической поддержки хостинговой компании, где размещен ваш сайт.

Наиболее частые проявления этих ошибок:

  • Ошибка работы с Интернет, выводится сообщение: failed sending data to the peer (no headers, no data)‏;
  • Получен пустой ответ сервера;
  • Ошибки 502, 500 или ошибка 404 уже в процессе обмена;
  • Ошибка нехватки памяти, например выводится сообщение: Fatal error : Allowed memory size of 67108864 bytes exhausted (tried to allocate 102401…)‏
  • Не удалось получить текущее состояние процесса обмена. Данные обмена отправлены, но не загружены.

Общие методы решения – это изменение настроек сервера. Во-первых, можно увеличить лимит времени и памяти в настройках PHP.

  • Откройте для редактирования файл php.ini.oci, расположенный в папке /apache.
  • Найдите в файле группу параметров Resource Limits.
  • Увеличьте значения параметров max_execution_time и memory_limit.
  • Перезагрузите сервер.

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

  • Откройте для редактирования файл httpd.conf, размещенный в папке /apache/conf/
  • Измените значение параметра Timeout.
  • Перезагрузите сервер.

Другой вариант решения этой проблемы (если хостер не соглашается на увеличение таймаута) — сделать равным таймаут сервера и таймаут «1С-Битрикс: Управление сайтом» (страница Магазин > Настройки магазина > Интеграция с 1С, поле Интервал одного шага в секундах). В этом случае пошаговое выполнение будет идти синхронно.

Если указанные меры не помогли или указанные параметры невозможно изменить, то, в крайнем случае, можно сделать следующее:

Наконец, можно уменьшить объем выгрузки товаров за 1 раз. Настройте фильтр по номенклатуре на стороне «1С»:

  • Запустите мастер настройки обмена данными (Сервисы > Обмен данными с WEB-сайтом > Настроить обмен данными с WEB-сайтом)
  • На первом шаге мастера выберите Изменить существующую настройку обмена данными и нажмите кнопку Далее.
  • Выберите настройку для редактирования и дважды кликните по ней.
  • В закладке Выгрузка товаров (Или Обмен заказами, в зависимости от ситуации) измените значения фильтра.
  • Сохраните изменения и повторите синхронизацию.

Ошибки при работе с файлами данных

Ошибки при работе с файлами вызваны в основном неправильной настройкой прав доступа к файлам. Типовые сообщения при этом выглядят следующим образом: «Ошибка открытия файла» и «Ошибка записи файла». Способы решения проблемы, естественно, — настройка прав доступа на уровне операционной системы.

Обратим внимание на фразу «на уровне операционной системы». Права на уровне «1С-Битрикс: Управление сайтом», как правило, выставлены всегда правильно. Тем не менее, проверить права на осуществление импорта/экспорта не помешает. Делается это на странице Магазин > Настройки магазина > Интеграция с 1С.

Наиболее вероятные причины:

  • У пользователя, от которого ведется обмен данными, нет прав на запись в папку /upload .
  • Файл создается с правами, которые не позволяют чтение файла.
  • Файл также может быть передан на сервер в zip-архиве, но по определённым причинам не удалось распаковать архив, например, некорректно работает функция zip_open на сервере.

Решения данных проблем довольно просты и понятны из самих проблем и решаются обращением к хостеру, который установит нужные права.

Выставление корректных прав на создаваемые файлы в рамках «1С-Битрикс: Управление сайтом» производится следующим образом:

  • Откройте для редактирования файл dbconn.php из папки /bitrix/ php_interface.
  • В строке define(«BX_FILE_PERMISSIONS», 0644); установите значения, которые порекомендовал хостер вместо 0644 выставленных по умолчанию.

Точно также нужно проверить выставить права на создаваемые папки. Только это делается уже в строке define(«BX_DIR_PERMISSIONS», 0755);.

Вот так выглядит проверка наличия расширения ZIP в настройках PHP:

  • Откройте в браузере страницу http://<ваш_сайт>//bitrix/admin/phpinfo.php. (Либо выполните команду if (exist_function (“zip_open”)) echo “OK”;). В браузере отобразится таблица:

    Таблица свойств PHP
    Таблица свойств PHP

  • В области ZIP посмотрите настройки. Для строки ZIP должно стоять «enabled».

Заметим, что ошибки при работе с файлами данных могут возникать и из-за того, что на компьютере, где установлена учетная система от 1С, имеется файрволл или антивирус, препятствующий корректной передаче файла или блокирующий отправку файла на сервер.

Проблемы авторизации

1С не может пройти процедуру аутентификации на сайт и в этой связи выдается ошибка. Вызвано это, как правило, неверной настройкой «1С-Битрикс: Управление сайтом».

«1С» может получать некорректный ответ при попытке авторизации на сайте. Это может быть ошибкой разработчика вашего сайта. Дело в том, что при авторизации первой строчкой ответа «1С» ждет «success». Но в ходе создания сайта разработчики могли в процессе разработки случайно оставить вывод в файлах тестовые строки.

Например, в файле /bitrix/php_interface/init.php или /bitrix/php_interface/dbconn.php и др.
Таким образом, 1С может получить ответ не «success», а «testsuccess» хотя данный авторизации отправлены корректные.

Другая типичная ошибка состоит в правах доступа на импорт каталога. Авторизация может не производиться, если пользователь, проводящий импорт, не обладает достаточным уровнем прав. Проверить это можно на странице Магазин > Настройки магазина > Интеграция с 1С.

Перейдите на указанную страницу и произведите следующие действия:

  • В поле Разрешить загрузку группам пользователей посмотрите, каким пользователям разрешен импорт/экспорт данных.
  • В зависимости от вашей конкретной ситуации или измените права доступа на импорт для нужных групп или включите нужного пользователя в группу, которой разрешен импорт из «1С».

Но в авторизации могут возникать и особые ошибки. Например, при работе PHP в режиме CGI. Это характерно для сайтов, размещенных на Windows-серверах. Можно это проверить с помощью файла test.php, как мы это делали при проверке свойств ZIP. В свойства сервера Apache в строке Server API в таком случае стоит CGI. Можно попытаться обойти эту проблему, а если не получится, то целесообразно обратиться в техподдержку хостинга.

Для «обхода» проблемы необходимо чтобы на сервере была включена обработка .htaccess и поддержка mod_rewrite. Выполните следующие действия:

  • В корне сайта в файл .htaccess добавьте строки:

    RewriteEngine on
    RewriteRule .* — [E=REMOTE_USER:%{HTTP:Authorization},L]

  • Закоментируйте следующие строки в файле .htaccess папки bitrix/admin/, которые отключают mod_rewrite:

    #

    # RewriteEngine Off

    #

  • В файл dbconn.php папки bitrix/php_interface/ добавьте строки:

    $remote_user = $_SERVER[«REMOTE_USER»]

    ? $_SERVER[«REMOTE_USER»] : $_SERVER[«REDIRECT_REMOTE_USER»];

    $strTmp = base64_decode(substr($remote_user,6));

    if ($strTmp)

    list($_SERVER[‘PHP_AUTH_USER’], $_SERVER[‘PHP_AUTH_PW’]) = explode(‘:’, $strTmp);

Ошибки MySQL

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

  • Выводится сообщение: Lost connection to MySQL server during query. Ошибка, скорее всего здесь в таймауте.

Возможное решение проблемы: $DB->Query(«SET wait_timeout=28800»);

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

  • Конфликт кодировок. Например, выводится сообщение:

[Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (cp1251_general_ci,COERCIBLE) for operation ‘=’]

Причиной является то, что таблицы базы данных в одной кодировке, а сам база в другой. В данном случае база в latin1 и новые таблицы создаются в latin1. При выгрузке из «1С» создается временная таблица b_xml_tree в «некорректной» кодировке latin1.

Решение простое и понятное: смена кодировки базы на корректную. Для решения этой проблемы нужно обратиться к хостеру.

Логические ошибки

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

Наиболее частая ошибка при выгрузке каталога товаров появляется вместе сообщением: «Изменения товаров не зарегистрированы. Выгрузка товаров не произведена». Как правило, в этом случае неверно настроен фильтр товаров. Нужно проверить эти настройки. Как правило, там выбраны параметры, которые не позволяют правильно отфильтровать параметры для выгрузки.

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

Другая ошибка при выгрузке каталога товаров — сообщение: «Не удалось найти вид номенклатуры». Эта ошибка возникает, если в «1С» нет видов «Услуга» и «Товар». Эти типы критичны для процесса обмена данными с сайтом. Решение проблемы – создать в «1С» указанные виды номенклатуры.

Если в процессе обмена возникает ошибка: «Поле объекта не обнаружено», то это означает, что не установлены соответствия для полей заказа в «1С-Битрикс: Управление сайтом». Проверьте настройки, заданные в закладке Экспорт в «1С:Предприятие» страницы Настройки > Настройки продукта > Настройки модулей > Интернет-магазин. Поля «Полное Название» и «Название» критичны для 1С., то есть без задачи соответствия этих полей экспорт выполняться не будет. Обратите внимание, что настройка соответствий производится отдельно для разных типов плательщиков.

Резюме

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

Роберт Басыров

Все права защищены. По вопросам использования статьи обращайтесь к администраторам сайта

Понравилась статья? Поделить с друзьями:
  • Ошибка при создании учетной записи microsoft
  • Ошибка при системном вызове как исправить
  • Ошибка при создании учетной записи fallout 76
  • Ошибка при создании установочной флешки виндовс 10
  • Ошибка при создании точки восстановления windows 10 0x81000203