Битрикс файл не найден

Обновлено: 03.07.2024

Где в Битрикс лежит файл init.php и что делать, если вы его не нашли

Файл init.php в битрикс может находиться по одному из следующих путей:

/bitrix/php_interface/init.php - в этом случае код написанный в файле распространяется на все ваши сайты.

/bitrix/php_interface/ID сайта/init.php - если файл находится по этому пути, то написанный в нем код будет подключен только к одному определенному сайту.

/local/php_interface/init.php - этот файл пришел к нам из D7. Это аналог файла /bitrix/php_interface/init.php Он будет работать для всех ваших сайтов, при этом есть один очень важный нюанс: файл /bitrix/php_interface/init.php не подключится и соответственно код написанный в нем работать не будет.


/bitrix/php_interface/ID сайта/init.php - этот файл, как и предыдущий его собрат пришел к нам из ядра D7, но является аналогом файла /bitrix/php_interface/ID сайта/init.php как и у его предшественника, при подключении этого файла, глобальный файл /bitrix/php_interface/ID сайта/init.php работать не будет


Выше описаны стандартные варианты расположения init.php в битрикс, но на вашем сайте может быть подключено 2-4 init.php, а возможен и такой вариант, что файлы init.php отсутствуют вовсе.

Если на вашем сайте есть несколько файлов init.php /bitrix/php_interface/init.php и /bitrix/php_interface/ID сайта/init.php то сначала подключится файл /bitrix/php_interface/init.php , а потом /bitrix/php_interface/ID сайта/init.php

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

Назначение файла init.php в Битрикс

Зная где в битрикс расположен файл init.php, вы сможете его редактировать. Зачем вам нужно редактировать этот файл? Если вы владелец магазина или обычный контент редактор, то лучше не пробовать, если разработчик, то редактирование этого файла може принести не мало пользы. Особеностью файла init.php в битрикс является то, что файл автоматически подключается в прологе сайта и может содержать в себе инициализации обработчиков событий и дополнительные функции, которые будут выполняться на всех страницах сайта.

Как работать с файлом init.php

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

Даже если вы узнали где лежит init.php в битрикс и понимаете как сним работать, необходимо соблюдать некоторые меры безопасности и правила хорошего тона в программировании:

1. Всегда вносите изменения только по ftp или sftp или хотя бы убедитесь в том, что у вас есть доступ к сайту по ftp/sftp - это будет полезно, если вы допустите ошибку в файле и сайт перестанет работать.

Битый час мучаюсь с "Раздел не найден". Проблему всю изгуглил и попробовал много вариантов, но всё тщетно.
Остальные разделы работают нормально - всё отображается, кроме одного.

С "касячным" разделом ситуация следующая:
1. Адреса страниц: screen1
По аналогии с остальными разделами.

2. Права на просмотр для всех пользователей (папка и инфоблок): "Чтение".

3. Инфлоблок настроен по аналогии с остальными разделами.

4. ID к инфоблоку страницы стоит нужный.

5. Обработка адресов и правила обработки, также, по аналогии с остальными разделами: screen2


Всей душой ненавижу движок битрикс, поэтому работаю с ним крайне редко.
Однако проблема стоит и нужно её решить.
Что я упустил? Или что делаю не так?

Заранее большое спасибо всем ответившим.

__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь


Не найден раздел при установке Windows
Нам не удалось создать новый или найти существующий раздел.


Как установить на виртуальную машину: Win 7 на primary раздел + Win XP на extended раздел ?
Всем привет! Задали лабу - поставить 2 Виндовса на 1 виртуальную машину. Все бы ничего, да задание.


Раздел диска пометился как "раздел восстановления" и стал недоступен
Ноутбук Samsung 535U3C, Windows 7 Раздел диска (бывший диск D) пометился как "раздел.

Похоже виной ваша ненависть
Для начала глядя на скрин2 становится ясно, что ни кто не задумывался создавая их. На лицо полнейшее игнорирование чтения базовой документации по битриксу. И не понимание как формируются там URL. Строки с 2 - 14 как вы думаете их вообще можно обработать? Условия наступления события полностью идентичны и как скрипт поймет чего и когда вы хотите? представьте себе последовательность if ifelse . подставляя туда первую колонку. Далее надо смотреть настройки самих типов ИБ. Думаю там тоже косяк на косяке

Чтобы не задавать такие, извините но, глупые вопросы. Прочитайте основы. хотя бы по ключевой сущности. курсы

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


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

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

define( "BX_FILE_PERMISSIONS", 0660 );

define( "BX_DIR_PERMISSIONS", 0775 );

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

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

find . -type d -exec chmod 775 < >\;

find . -type f -exec chmod 664 < >\;

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

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

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



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

Отправка почты

Уведомление: Ошибка! Не работает

Эта ошибка возникает, если вы используете хостинг на тестовом периоде — до оплаты услуги почта недоступна. Как только хостинг будет оплачен, почта заработает.

Режим работы MySQL

Уведомление: Ошибка! innodb_strict_mode=ON, требуется OFF. Переменная sql_mode в MySQL должна быть пустая, текущее значение: NO_ENGINE_SUBSTITUTION

Эта ошибка критична. Она может привести к блокировке запросов к базе данных, что практически означает остановку работы сайта.

Решение:

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

В файл /public_html/bitrix/php_interface/after_connect.php под уже имеющимися строками и до символов ?> добавьте:

В файл /public_html/bitrix/php_interface/after_connect_d7.php под уже имеющимися строками и до символов ?> добавьте:

После этого проверка Bitrix пройдет успешно.

Размер стека и pcre.recursion_limit

Уведомление: Замечание: Возможны проблемы в работе с длинными строками из за системных ограничений

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

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

Решение:

Выполнение агентов на cron

Уведомление: Замечание: Агенты выполняются на хитах, рекомендуется перенести их выполнение на cron

Это замечание некритично. В Битрикс предусмотрен внутренний планировщик задач (агентов). Данное замечание влияет на то, насколько точно по времени сработают запланированные задачи. Грубо говоря, скрипты сайта выполняются, только когда его страницы кто-то посещает. Если нет посещений, то и таймер работать не будет. Cron позволяет полностью решить проблему с планированием задач.

Решение:

Чтобы перенести работу непериодических агентов (и передачу почты) на Сron, необходимо установить константу BX_CRONTAB_SUPPORT .

Для этого добавьте в файл /public_html/bitrix/php_interface/dbconn.php строку:

1. В разделе Crontab нажмите "Добавить новую задачу" и задайте удобное имя для задачи.

2. В пункте "Исполнитель" выберите "Исполняемый бинарный файл".

3. В пункте "Путь до файла" укажите команду следующего вида:

4. В пункте "Периодичность" выберите "Каждую минуту".

Уведомление: Ошибка! Не настроен запуск cron_events.php на cron

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

Решение:

Выполните приведенную выше инструкцию по добавлению задачи cron, и ошибка будет устранена.

Обязательные параметры PHP

Уведомление: Ошибка! Значение max_input_vars должно быть не ниже 10000

Эта ошибка не влияет на работоспособность сайта напрямую, но может отразиться на работе с большими формами в административной панели. При работе с инфоблоками низкое значение параметра max_input_vars может вызвать проблемы с сохранением настроек, поэтому система выделяет эту ошибку как критическую.

Читайте также: