Однажды, после переноса сайта на 1С Битрикс появилась проблема – файлы перестали загружаться. Сайт переносил хостер так как тогда я не работал с Битриксом. После переноса появилась ошибка «Ошибка! Временная папка не существует» или не создан временный каталог для загрузки Битрикс.

Как решить проблему

Итак, в Битрике как во многих CMS (системах управления контентом) существует временная папка для загрузки файлов – tmp.

Путь к данной папке прописан в файле dbconn.php, сам файл находится в :

Открываем файл и видим в самом низу строку

define(«BX_TEMPORARY_FILES_DIRECTORY», «тут будет прописан путь к временной папке»); например /bitrix/tmp

Далее необходимо убедится в том, что такая папка существует.

Если временная папка не существует

Создаем папку, где создавать – смотрим в пути. Владельцем папки должен быть пользователь который устанавливал (или переносил) сайт. Обычно это не root, а bitrix. Права для папки – 0755.

В принципе папку можно создать где вам угодно, после чего скопировать путь и прописать его в BX_TEMPORARY_FILES_DIRECTORY.

Если папка существует – смотрим права и владельца.

Бывают случаи когда владелец сайта один пользователь, но файлы переносились под учеткой root пользователя. В таком случае подключаемся к серверу через консоль SSH, и выполняем следующие команды:

find /home/bitrix/www -type f -exec chown bitrix:bitrix <> ;

find /home/bitrix/www -type d -exec chown bitrix:bitrix <> ;

find /home/bitrix/www -type f -exec chmod 644 <> ;

find /home/bitrix/www -type d -exec chmod 755 <> ;

  • /home/bitrix/www – это путь до вашего сайта,
  • -type f … — назначение прав,
  • bitrix:bitrix – пользователь:группа в которую входит пользователь.

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

Не создан временный каталог для загрузки

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

Решение:

Проверить права доступа к папке для временных файлов.
Проверить в файле – /bitrix/php_interface/dbconn.php настройку параметра

P.S. Указывается абсолютный путь к папке на хостинге. Например /var/www/site/php-tmp/

Можно попробовать закомментировать строку define("BX_TEMPORARY_FILES_DIRECTORY", ". ");, «Битрикс» должен будет взять настройку из настроек сервера.

После переноса сайта на другой хостинг, Bitrix перестал сохраняются/обновлять превью и детальное изображение (PREVIEW_PICTURE и DETAIL_PICTURE)

Ошибок не выдает, права на все по максимуму.

Проблема оказалась в том, что у битрикса, в файле /bitrix/php_interface/dbconn.php, "гвоздями прибит" путь до темповой директории:

Как не странно указание верного пути тоже не помогло.

Решение: закомментировать данную строку: