Битрикс restore php 500 ошибка

Просмотров: 43593
Дата последнего изменения: 12.05.2022

Сложность урока:

3 уровень — средняя сложность. Необходимо внимание и немного подумать.

4

5

  Перенос сайта нештатными средствами

Перенос сайта на хостинг лучше всего выполнять встроенными в Bitrix Framework средствами резервного копирования/восстановления.

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

Среди часто возникающих проблем:

  1. Веб-сервер не может записать в нужную ему папку или удалить временные файлы. Возможные последствия:
    • невозможность обновления продукта;
    • невозможность редактировать сайт через веб-интерфейс;
    • некорректная работа компонента кэширования;
    • и другие проблемы.

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

      Самым простым решением в этом случае будет установка прав на все файлы и папки 777 (для Unix платформы) либо любой другой способ дать PHP запись на эти файлы.

  2. Нет возможности отредактировать через ftp/ssh файлы, созданные через веб-интерфейс. В этом случае многим веб-разработчикам будет сложно дорабатывать сайт.

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

    define("BX_FILE_PERMISSIONS", 0666);
    define("BX_DIR_PERMISSIONS", 0777);

    Однако для файлов, созданных через ftp/ssh, вам придется периодически изменять права вручную. Либо, если хостинг это поддерживает, устанавливать параметр umask.

  Настройки PHP

При переносе сайта на хостинг могут возникнуть различные нюансы из-за настроек PHP:

  • Проблемы с несоответствием владельца файлов: на ряде хостингов PHP работает от имени одного пользователя, а доступ по ftp/ssh предоставлен другому. В этом случае файлы, созданные одним методом, могут быть недоступны для модификации, или вообще вызывать ошибку выполнения из-за нарушения параметров безопасности.
  • Проблемы с настройками безопасности: возможны различные варианты подключения PHP к веб-серверу, и в некоторых из этих вариантов устанавливаются жесткие ограничения на владельца файла и права на файл. В этом случае возможны ошибки с кодом 500, и разобраться в проблеме вам поможет только журнал ошибок веб-сервера.

    Пример: На многих хостингах, если PHP подключен как CGI, требуется соответствие владельца файла и прав на файл. Если владелец файла – не ваш аккаунт или права на файл допускают запись всем пользователям, PHP будет вызывать ошибку. В этом случае необходимо установить корректные права на файлы и папки, а также правильные параметры в dbconn.php.

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

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

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

  Возможные проблемы при работе с многосайтовостью в Bitrix Framework

Проверьте, что ваш хостинг позволит организовать многосайтовость выбранным вами методом. Не все провайдеры позволяют корректно (для Bitrix Framework) создавать дополнительные сайты. Информацию об способах организации многосайтовости можно получить в учебном курсе Многосайтовость.

Проблемы с почтой

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

Распакованный сайт недоступен

После распаковки резервной копии на всём сайте отображается только форма авторизации. Возможные причины и решения:

  • Некорректное значение поля Путь к корневой папке веб-сервера для этого сайта в настройках сайтов (Настройки > Настройки продукта > Сайты > Список сайтов).

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

  • Если перенос осуществлялся простым копированием файлов (FTP/SSH), мог не скопироваться файл .access.php. В данном файле хранятся права доступа групп пользователей к сайту, если данного файла нет, то для всех пользователей устанавливается право Запрещено.

    Решение 1: в корень сайта положить файл .access.php с содержимым:

    <?  $PERM["/"]["*"]="R"; ?>

    либо

    Решение 2: через файловый менеджер продукта в свойствах корневой папки сайта на вкладке Доступ установить для группы Все пользователи (в том числе неавторизованные) право Чтение.

Не полный архив

При просмотре архива, созданного штатной системой резервного копирования, через WinRar видно, что файлов в архиве гораздо меньше, чем на сайте.

Причина: дело в том, что у формата tar есть несколько диалектов. Система пакует архив в формате GNU tar, как это делает по умолчанию tar в Linux. WinRar понимает tar, но конкретно этот диалект поддерживает не полностью.

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

Ошибка ERROR 1062 (23000)

При распаковке резервной копии происходит ошибка: ERROR 1062 (23000) at line 1247: Duplicate entry '2-?' for key 2.

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

  • Кодировка архива устанавливается в зависимости от содержимого файла /bitrix/php_interface/after_connect.php, например:
    <?
    $DB->Query("SET NAMES 'utf8'");
    ?>

    т.е архив будет создаваться в кодировке utf8.

  • Кодировку сервера баз данных можно увидеть в параметре character_set_server после выполнения SQL-запроса:
    show variables where Variable_name = 'character_set_server';

Обойти или устранить эту ошибку можно двумя способами:

  • В настройках нового сервера баз данных изменить кодировку в параметре character_set_server на ту, в которой сделан архив.

    Внимание! За выполнением этой операции возможно придется обратиться к администратору сервера.

  • Можно открыть архив в текстовом редакторе и в самое начало вставить строку:
    SET NAMES `utf8`;

    Кодировка выбирается в зависимости от кодировки архива.

    Внимание! Этот способ работает только в случае небольших дампов (которые успевают импортировать за один шаг).

Ошибки в .htaссess

Часть ошибок (например: ошибка 404 при переходе подробную информацию новостей), возникающих при переносе сайтов связана с тем, что при переносе файл .htaссess переименовывается с добавлением «_». Для решения проблемы достаточно проверить имя файла и, при обнаружении ошибки, восстановить его.

21.11.2021

HTTP Error 500 при установке через restore.php

Пытаюсь установить Битрикс на хостинге и получаю в браузере ошибку HTTP Error 500. Панель управления хостингом FastPanel, VPS. Все по-умолчанию, никаких кастомных конфигураций не делал.

Решение:
Переключить в хостинг панели версию PHP на более новую версию (в данном случае переключил с php54 на php74) и всё заработало.

Автор проекта: Dimos
Заметки программиста, дизайнера, геймдев-мастера.
Делюсь опытом.

при переносе с тестового хостинга на боевой , когда заходим по ссылке http://имя_сайта/bitrix/admin/ или http://имя_сайта/bitrix/admin/index.php… выдаёт 500 ошибка Internal Server Error
при этом, если ввести http://имя_сайта/bitrix/admin/gfdggfdg, то уже заходит, выдаёт 404 в самой админке и уже можно по ней перемещаться и работать в ней. Есть идеи в чем дело, куда копать и как исправить?
ТП хостинга сказала, что у неё нет идей решения проблемы.

лог апача, который к этой проблеме относится:
[Tue Oct 08 16:57:32.512957 2019] [core:error] [pid 2283] [client 95.79.108.23:64931] End of script output before headers: index.php, referer: http://имя_сайта/bitrix/admin/

код файла .htaccess:

Options -Indexes 
ErrorDocument 404 /404.php

<IfModule mod_php5.c>
  php_flag session.use_trans_sid off
  #php_flag default_charset UTF-8
  #php_value display_errors 1
</IfModule>

<IfModule mod_php7.c>
  php_flag session.use_trans_sid off
  #php_flag default_charset UTF-8
  #php_value display_errors 1
</IfModule>

<IfModule mod_rewrite.c>
  Options +FollowSymLinks
  RewriteEngine On
			
	# ASPRO_ROBOTS Serve robots.txt with robots.php only if the latter exists
	RewriteCond %{REQUEST_FILENAME} robots.txt
	RewriteCond %{DOCUMENT_ROOT}/robots.php -f
	RewriteRule ^(.*)$ /robots.php [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
  RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
  RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>

<IfModule mod_dir.c>
  DirectoryIndex index.php index.html
</IfModule>

<IfModule mod_expires.c>
  ExpiresActive on
  ExpiresByType image/jpeg "access plus 3 day"
  ExpiresByType image/gif "access plus 3 day"
  ExpiresByType image/png "access plus 3 day"
  ExpiresByType text/css "access plus 3 day"
  ExpiresByType application/javascript "access plus 3 day"  
</IfModule>

В заметке собраны некоторые проблемы с Bitrix Framework и VMBitrix, а так же приведены способы их решения.

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

Прежде чем затронуть функциональность сайта не забудьте сделать бэкап.

Как уменьшить размер БД

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

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

Как очистить статистику Веб-аналитики

В админке перейдите в Настройки > Настройки продукта > Настройки модулей > Веб-аналитика. В разделе Очистка статистики укажите до какой даты выполнить очистку (если оставить незаполненным, то будет очищена вся статистика) и нажмите кнопку Очистить.

Как удалить записи из Журнала событий

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

Более быстрый и радикальный вариант – очистить таблицу b_event_log через SQL-запрос. При этом будут удалены все события!

Если таблица не очень большая, выполните запрос через админку: Настройки > Инструменты > SQL запрос (или на странице you.site/bitrix/admin/sql.php).

DELETE FROM `b_event_log`;

Если таблица огромная (больше 4Гб), то скорее всего запрос не выполнится и отвалится по тайм-ауту. В таком случае выполнить запрос лучше из консоли MySQL на сервере, примерно так:

mysql -h you_sql_server -u root -p

USE you_db_name;

DELETE FROM `b_event_log`;

При большем размере придётся набраться терпения, очистка моей 9 гиговой таблицы заняла около часа.

К слову, поврежденную таблицу можно восстановить командой.

REPAIR table b_event_log;

Как очистить разросшуюся таблицу b_cache_tag

Перейдите в Настройки продукта > Автокэширование > Очистка файлов кэша.

Затем аналогично действиям описанным в предыдущем разделе выполните:

TRUNCATE TABLE b_cache_tag

Где изменить mbstring.internal_encoding и mbstring.func_overload

Значения mbstring.func_overload и mbstring.internal_encoding зависят от вашего сайта, используемой кодировки и проблемы, которую решаете.

Вариант 1 (для Apache и PHP ниже версии 7.3). Установить необходимые значения в файле .htaccess.

php_value mbstring.func_overload 2
php_value mbstring.internal_encoding UTF-8

Вариант 2 (так же для PHP ниже версии 7.3). Добавить параметры в файле настройки виртуальных хостов. Для Apache это:

  • /etc/apache2/sites-available/сайт.conf (если использется BitrixVM)
  • /etc/apache2/httpd.conf
  • /etc/apache2/apache2.conf
<VirtualHost *:80>
  ServerAdmin ...
  ServerName ...
  ServerAlias ...
  DocumentRoot "/путь/к/папке/сайта"

  php_admin_value mbstring.func_overload 2
  php_admin_value mbstring.internal_encoding UTF-8
</VirtualHost>

Вариант 3 (для всех версий PHP). Установить необходимые значения в php.ini, для BitrixVM /etc/php.d/z_bx_custom.ini. После внесения изменений нужно перезагрузить сервер.

Начиная с версии PHP 7.3  значение mbstring.func_overload нельзя установить индивидуально для конкретного сайта, ни через .htaccess, ни через конфигурационный файл Apache. Единственный вариант – установить значение mbstring.func_overload непосредственно в файле php.ini. Однако php.ini общий и если на сервере несколько сайтов, то они могут перестать работать, например если часть сайтов работает в кодировке UTF-8, а часть на cp1251.

Смена кодировки Битрикс на UTF8

Для PHP установите следующие параметры.

mbstring.func_overload 2
mbstring.internal_encoding UTF-8

Удалите модули Поиск без сохранения таблиц и Веб-аналитика (без сохранения таблиц, но с сохранением шаблонов сообщений).

Из словаря транслита в модуле Форум (Сервисы > Форумы > Фильтр нецензурных слов > Словарь транслита) удалить букву ё (ID = 7).

В настройках сайта изменить кодировку с windows-1251 на utf-8.

В файле /bitrix/php_interface/dbconn.php установить для константы BX_UTF значение true.

define("BX_UTF", true);

Скачать с сайта 1С-Битрикс скрипт convert_utf8.php, поместить его в корень сайта, затем запустить и дождаться полного выполнения.

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

SELECT CONCAT('ALTER   TABLE `', t.`TABLE_SCHEMA`, '`.`', t.`TABLE_NAME`, '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;') as

sqlcode

FROM `information_schema`.`TABLES` t

WHERE 1

AND t.`TABLE_SCHEMA` = 'database_name' ORDER BY 1

Где database_name – имя базы данных сайта.

В результате будет выведен новый запрос, который нужно скопировать и выполнить. По завершении таблицы базы данных будут переведены в кодировку UTF-8.

Далее пропишите в /bitrix/php_interface/after_connect.php:

$DB->Query("SET NAMES 'utf8'");
$DB->Query('SET collation_connection = "utf8_unicode_ci"');

В файл /bitrix/php_interface/after_connect_d7.php:

$connection->queryExecute("SET NAMES 'utf8'");
$connection->queryExecute('SET collation_connection = "utf8_unicode_ci"'); 

В /bitrix/.settings.php:

return array (
  'utf_mode' => 
  array (
    'value' => true,
    'readonly' => true,
  ),

Затем полностью очистите кэш сайта.

Удалите более ненужный скрипт convert_utf8.php.

Заново установите модуль Поиск и сделайте переиндексацию.

Установите модуль Веб-аналитика (если использовали ранее).

Если возникли проблемы с сериализованными массивами возможно сможет помочь скрипт.

Дополнительные сведения на dev.1c-bitrix.ru и тема на форуме.

Если выкидывает из админки Битрикс

После ввода логина и пароля снова открывается страница авторизации

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

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

Периодически выкидывает из админки

Такое может происходить если в качестве DNS-сервера используется Cloudflare или аналог, например для использования SSL-сертификатов или защиты от DDoS. В этом случае, сессию обрывает механизм защиты Битрикс. Cloudflare подменяет ip-адрес пользователя и админка пресекает доступ. Для исправления внесите в dbconn.php следующие правки:

$_SERVER["REMOTE_ADDR"] = $_SERVER['HTTP_CF_CONNECTING_IP'];

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

Другой причиной вылетов, может быть наличие лишних символов или пробелов в файлах dbconn.php, after_connect.php, after_connect_d7.php, особенно в начале или в конце файла. Исправьте и проблема должна решиться.

Не отправляется почта

Если перестала отправляться почта на Яндекс

После многих лет пользования Яндекс.Почтой для отправки сообщений от интернет-магазина на Битрикс, почта перестала работать. В логах ошибка:

Sender or From header address rejected: not owned by authorized user

Одна из причин по которой это может произойти: адрес почты, под которой авторизируется сервер, отличается от почты (поле «From», «От кого») указанной на сайте.

Раньше такая схема вполне себе работала на Яндекс. В Битрикс можно было указать почту, например my@company.ru, при том, что сервер отправлял ее с ящика info@yandex.ru. Получатель письма все равно в отправителях видел почту my@company.ru.

Но начиная с 2020 года, Яндекс постепенно запрещает отправку писем если поле «From» отличается от адреса пользователя, с данными которого производится авторизация на сервере.

Решений несколько:

  • указать на сайте почту, под которой происходит авторизация на сервере, что в случае использования почты на Яндекс возможно будет не очень солидным;
  • поднять свой почтовый сервер и настроить отправку с него;
  • арендовать недорогой хостинг, который позволяет отправлять письма даже если поле «From» отличается от адреса пользователя, с данными которого производится авторизация на сервере. Например REG.RU предоставляет такую возможность, подойдет даже самый простой тариф дешевле 100 руб. в мес.

Свою проблему решил, выбрав третий вариант. Рекомендую хостинги:

  • REG.RU (промокод на скидку для заказа домена или хостинга: 2229-CC0A-AC4D-C31B)
  • Hostland (месяц бесплатно)

Логирование почты

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

Добавьте в dbconn.php следующие строки.

// определим константу LOG_FILENAME, в которой зададим путь к лог-файлу
define("LOG_FILENAME", $_SERVER["DOCUMENT_ROOT"]."/mylog-123.txt");

//дебаг почты
function custom_mail($to, $subject, $message, $additional_headers='', $additional_parameters='')
{
   AddMessage2Log(
            'To: '.$to.PHP_EOL.
            'Subject: '.$subject.PHP_EOL.
            'Message: '.$message.PHP_EOL.
            'Headers: '.$additional_headers.PHP_EOL.
            'Params: '.$additional_parameters.PHP_EOL
         );
   if ($additional_parameters!='') {
      return @mail($to, $subject, $message, $additional_headers, $additional_parameters);
   } else {
       return @mail($to, $subject, $message, $additional_headers);
   }
}

Теперь, при отправке письма в лог будут писаться сообщения.

Проблемы с отправкой уведомления о заполнении веб-форм

Для начала проверьте, настройки почтового события заполнения формы и его шаблона. Откройте Панель управления > Настройки > Настройки продукта > Почтовые события > Типы событий и выберите интересующее событие.

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

Тип почтового события Битрикс

На вкладке Шаблоны должен задан хотя бы один шаблон. Перейдите в шаблон кликнув на его идентификаторе или откройте его из списка шаблонов: Панель управления > Настройки > Настройки продукта > Почтовые события > Почтовые шаблоны.

В настройках выбранного почтового шаблона, должна стоять галочка Активен, и выбран хотя бы один сайт. Также должны быть корректно заполнены поля От кого и Кому (значения по-умолчанию #DEFAULT_EMAIL_FROM# и #EMAIL# соответственно).

Редактирование почтового шаблона

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

Если не помогло, перейдите в Настройки > Инструменты > SQL-запрос и выполните следующий запрос:

select * from b_event where event_name like '%form%' order by date_insert desc

Найдите событие заполнения формы, поле SUCCESS_EXEC:

  • Y – сообщение отправлено, дальнейший его путь сможет определить администратор хостинга или почтового сервера;
  • N – сообщение не отправлено. Проверьте файл /bitrix/php_interface/dbconn.php на наличие констант BX_CRONTAB и BX_CRONTAB_SUPPORT, уберите их если они присутствуют, затем выполните SQL-запрос еще раз. Если и после этого SUCCESS_EXEC равен N, попробуйте очистить кэш /bitrix/managed_cache/.
  • F – функция mail вернула False при отправке. Смотрите логи. Возможно почта на хостинге (сервере) не настроена или настроена некорректно, решается хостером или администратором сервера. Другая причина, почтовый сервер не поддерживает формат письма. Попробуйте изменить настройки отправки в Главном модуле: убрать/поставить галку Дублировать email адрес в заголовке, убрать/поставить галку Конвертировать 8-битные заголовки.
  • 0 (ноль) – не корректные настройки типов событий или в почтовом шаблоне. Проверьте настройки как указано в начале.

Ошибка БД после переноса на другой хостинг

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

2016-05-25 15:33:22 - Host: host:80 - UNCAUGHT_EXCEPTION - [Error]
Call to undefined function BitrixMainDBmysql_connect() (0)
/home/bitrix/www/bitrix/modules/main/lib/db/mysqlconnection.php:45
#0: BitrixMainDBMysqlConnection->connectInternal()...

Может быть вызвана сменой СУБД с MySQL на MySQLi или наоборот.

Чтобы исправить нужно перенастроить подключение к БД, отдельно для старого и нового ядра.

В случае с MySQLi

В файле bitrixphp_interfacedbconn.php

define("BX_USE_MYSQLI", true);

В файле bitrix.settings.php поменять класс соединения с базой на MysqliConnection.

'connections' =>
    array (
        'value' =>
        array (
            'default' =>
                array (
                    'className' => 'BitrixMainDBMysqliConnection',
                    'host' => 'localhost',
                    'database' => 'database',
                    'login' => 'login',
                    'password' => '*****',
                ),
        ),
    ),

В случае с MySQL соответственно

В файле bitrixphp_interfacedbconn.php

define("BX_USE_MYSQLI", false)

В файле bitrix.settings.php поменять класс соединения с базой на MysqlConnection.

'connections' =>
    array (
        'value' =>
            array (
            'default' =>
                array (
                    'className' => 'BitrixMainDBMysqlConnection',
...

После изменения настроек, сайт должен заработать.

Ошибка: innodb_strict_mode=ON, требуется OFF

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

Вариант 1. Через конфигурационные файлы Битрикс.

В файл /bitrix/php_interface/after_connect.php добавьте сторку:

$DB→Query("SET innodb_strict_mode='OFF'");

В файл /bitrix/php_interface/after_connect_d7.php

$connection→queryExecute("SET innodb_strict_mode='OFF'");

Вариант 2. Через конфигурационные файлы MySQL.

Откройте конфигурационный файл MySQL (три возможных варианта расположения):

  • /etc/my.cnf
  • /etc/alternatives/my.cnf
  • /etc/bitrix-my.cnf

Добавить строку в блоке # InnoDB parameters

innodb_strict_mode = OFF

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

Ошибка: Переменная sql_mode в MySQL должна быть пустая

Ошибка может появиться при проверке системы, когда параметр sql_mode задаёт режим работы MySQL, несовместимый с Битрикс.

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

В файл /bitrix/php_interface/after_connect_d7.php

$connection = BitrixMainApplication::getConnection();
$connection->queryExecute("SET sql_mode=''");

В файл /bitrix/php_interface/after_connect.php

$DB->Query("SET sql_mode=''");

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

Недоступны файлы для чтения и записи

Если при проверке доступа к файлам 1С-Битрикс (Настройки – Инструменты – Проверка сайта – Проверка доступа) появляется ошибка: Недоступны для чтения или записи (показаны первые 10), это значит на сервере неверно настроены права для сайта.

Bitrix Files Access Denied

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

Чтобы ошибка исчезла, нужно сделать владельцем файлов и папок пользователя bitrix, а права назначить как 775 для папок и 664 для файлов.

Следующая команда сделает владельцем файлов и папок пользователя bitrix в указанном каталоге (у вас он может быть другим). Как правило это /home/bitrix/www/ для основного сайта и/или /home/bitrix/ext_www/папка_сайта/ для дополнительных.

chown -R bitrix:bitrix /home/bitrix/www/

Ключ -R означает рекурсивно, т.е. включая вложенные папки и файлы.

А следующие команды выставят правильные права на доступ к файлам и папкам.

cd /home/bitrix/www
find . -type d -exec chmod 775 {} ;
find . -type f -exec chmod 664 {} ;
find . -type d -exec chown bitrix:bitrix {} ;
find . -type f -exec chown bitrix:bitrix {} ;

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

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

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

Рассказываем, как устранить 500 ошибку на сайте на 1С-Битрикс.

«Internal Server Error» — внутренняя ошибка сервера. Она может произойти и на сайте на CMS 1С-Битрикс, WordPress и других. Само название говорит о том, что дело в хостинге.

«Internal Server Error» выводит код ответа 500, а ошибки вызваны проблемами в файлах сайта:

Если проблема в файле .htaccess, при переходе на сайт появится сообщение «Internal server error».

До начала работы над устранением ошибки нужно выяснить причину ее возникновения. Для начала проверьте доступное ОЗУ.

Шаг №1. Проверка доступной оперативной памяти (ОЗУ)

  • Если у вас виртуальный хостинг

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

  • Если у вас виртуальный сервер или выделенный сервер

Перейдите в панель управления виртуальным сервером. На панели меню слева перейдите в Инструменты (1) → Shell-клиент (2). В открывшейся вкладке введите команду «free -h» (3) и нажмите enter.

В столбце «used» (4) в первой строке указана используемая ОЗУ. На скриншоте это 398 МБ. В столбце «free» (5) в первой строке указана свободная ОЗУ. На скриншоте это 3,2 Гб.

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

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

Шаг №2. Проверка наличия ошибок в файле «.htaccess»

Для проверки ошибок в «.htaccess» достаточно просто изменить название этого файла и перейти на сайт. Если сайт начнет работать, в файле есть ошибки.

Для этого в панели управления виртуальным хостингом перейдите в Главное (1) → Менеджер файлов (2). Перейдите в корневую папку сайта (по умолчанию это «www»). Выделите файл «.htaccess» (3) и нажмите кнопку «Атрибуты» (4).

В строке «Имя» измените название — например, напишите «.htaccess_1». Нажмите «Ок», чтобы сохранить изменения.

Перейдите на сайт. Если он заработал, то проблема в файле. Вспомните, какие изменения вы вносили, и исправьте их. Либо восстановите файл из резервной копии.

Если сайт все еще не работает, верните прежнее имя файла «.htaccess» и перейдите к 3 шагу.

Шаг №3. Проверка наличия ошибок в скриптах сайта

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

Вставьте строку «php_value display_errors 1» так, как показано на скриншоте ниже.

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

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

Проверка системы

Урок
78
из
292

Сложность урока:

2 уровень — несложные понятия и действия, но не расслабляйтесь.


2 из 5

Дата изменения:
26.01.2023

Просмотров:
13451

Недоступно в лицензиях:

Текущую редакцию Вашего 1С-Битрикс можно просмотреть на странице Обновление платформы (Marketplace > Обновление платформы).


Ограничений нет

  Форма Проверка системы

Форма Проверка системы (Настройки > Инструменты > Проверка системы) предназначена для всесторонней проверки соответствия параметров системы, на которой осуществляется функционирование проекта, минимальным и рекомендуемым техническим требованиям продукта.

Примечание:

  1. Не осуществляется проверка структуры базы для Oracle и MS SQL.
  2. Проверка не осуществляется в модулях, в которых присутствует точка в имени: в модулях Marketplace.
  3. Тест ничего не знает об архитектуре сети и он пытается протестировать систему на основе той информации, что есть. Соответственно, при проверке на локальной установке могут возникать ошибки, связанные с необходимостью внешнего сканирования, например, ошибка сокетов.

  Закладка Тестирование конфигурации

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

Каждый тест сопровождается подробной информацией, которую можно прочитать по кнопке в строке теста. Откроется окно с

подробными комментариями


В окне комментариев есть ссылка на Журнал проверки системы. С помощью журнала можно понять
причину ошибки.
Файлы журналов проверки не хранятся. Доступен всегда только файл последней проверки.

.

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

  Закладка Проверка доступа

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

  • Полная проверка – анализируются на доступ все файлы системы.
  • Проверка папки для загрузки файлов – проверяется доступность на чтение и на запись папки для загрузки файлов.
  • Проверка ядра – анализу на доступ подвергаются системные файлы.

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

  Другие возможности проверки системы

  • Проверка сайта без авторизации
  • Инструмент представляет возможность протестировать конфигурацию, даже если не работает авторизация или сайт не открывается из за нарушения сжатия (на экране отображаются крякозябры). Для этого достаточно создать пустой файл site_checker_debug в папке /bitrix. После этого откройте страницу http://you_site.ru/bitrix/admin/site_checker.php

    Внимание! После решения проблемы обязательно удалите файл site_checker_debug и убедитесь, что проверка сайта без авторизации недоступна. Если открыть проверку сайта с авторизацией — файл site_checker_debug удаляется автоматически.

  • Исправление ошибок базы данных
  • Выполняется, если при тестировании конфигурации в структуре базы данных будут найдены ошибки:

    BD_ispr.png

    За первоисточник берётся кодировка соединения с базой. В большинстве случаев она правильная, т.к. иначе вся информация на сайте просто будет нечитаема.

    Кодировка базы — это важный параметр, но не влияющий непосредственно на отображение данных. Новые таблицы (после обновления или переустановки модулей) будут создаваться в этой кодировке. Т.е. проблемы появляются в будущем.

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

Проверка системы

Страница Проверка системы (Настройки > Инструменты > Проверка системы) предназначена для всесторонней проверки соответствия параметров системы, на которой осуществляется функционирование «1C-Битрикс: Управление сайтом», минимальным и рекомендуемым требованиям продукта.

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

  • Тестирование конфигурации — предназначена для проведения комплексного тестирования конфигурации сервера. Операция может занять несколько минут. Ваша система должна соответствовать обязательным параметрам. Если какой-либо из этих параметров выделен красным цветом, то вам необходимо исправить его. В противном случае работоспособность сайта не гарантируется.
  • Проверка доступа к диску — cкрипты сайта должны иметь доступ на запись к файлам сайта. Это необходимо для работы модуля Управление структурой сайта, загрузки файлов, а так же для работы системы обновлений, которая обновляет ядро сайта до последней версии.

    Вы можете выбрать тип проверки:

    • Полная проверка;
    • Проверка папки для загрузки файлов;
    • Проверка ядра.

    Результаты проверки доступности дисков физической системы будут отображены ниже.

См. также

  • Проверка системы в курсе Администратор. Базовый.

© «Битрикс», 2001-2023, «1С-Битрикс», 2023

Наверх

Иллюстрация

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

Основное назначение Проверки системы дать понимание, как работает сайт, есть ли какие-нибудь проблемы в конфигурации сервера, работает ли почта и т.д. В общем, это дает некий общий анализ системы сайта.

Инструмент расположен в админке Битрикса по пути Настройки / Инструменты / Проверка системы

Аудит сайта на Битрикс. Часть 2. Проверка системы

Здесь расположены две нужные вкладки – тестирование конфигурации и проверка доступа.

Тестирование конфигурации

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

Аудит сайта на Битрикс. Часть 2. Проверка системы

В случае, если имеется проблема, то текст выделяется красным

Аудит сайта на Битрикс. Часть 2. Проверка системы

Как исправить ошибку

Чтобы получить детали как исправить проблему, рядом есть кнопка со знаком вопроса. Там описаны советы, как сделать, чтобы все заработало.
Если нужна подробная информация, что не сработало – нажмите на ссылку в подсказке «Подробности в журнале проверки системы».

Аудит сайта на Битрикс. Часть 2. Проверка системы

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

Примеры частых ошибок

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

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

Работа с сокетами

Если здесь тестирование не прошло успешно, то остальные тесты ниже тоже не смогут быть проверены. В основном эта ошибка возникает, если сайт недоступен по текущему URL или SSL-сертификат не проходит верификацию. В первом случае нужно проверить доступность сайта по доменному имени, оно должно совпадать в конфигурации сервера и быть прописано в A-записи домена. В случае SSL – можно проверить с помощью внешних инструментов.

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

В процессе запуска этого теста проверяется результат отправки писем, а также наличие активных записей в таблице b_event. Считается, если письмо не отправляется с помощью обычной функции php mail, то проблему нужно смотреть в логах сервера.

Проверка доступа

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

Аудит сайта на Битрикс. Часть 2. Проверка системы

Исходя из описания проводится проверка файлов и папок на возможность чтения/записи. Есть три режима работы – полная проверка, проверка только папок для загрузки или проверка файлов ядра. В идеале права должны везде быть настроены одинаково. То есть пользователь из-под которого работает сайт должен иметь права записи/чтения/исполнения в эти файлы.

После запуска, если найдены ошибки выводится не более десяти записей:

Аудит сайта на Битрикс. Часть 2. Проверка системы

В идеале не должно быть никаких ошибок и проверка должна пройти успешно.

Как исправить

Все файлы и папки на сервере должны быть доступны для пользователя из-под которого работает сайт, а изменения не должны вносится от рута. Если речь идет про VM Bitrix – то это пользователь bitrix.

Исправляется проблема простой перенастройкой всех прав файлов и папок сайта на стороне сервера из консоли, командами chown и chmod.

Примеры последствий ошибок

  • При разворачивании резервной копии через restore.php может произойти ошибка и бекап не развернется нормально.
  • Файл или папка не доступны для открытия.
  • Не работает загрузка файлов на сайт.
  • Не грузятся или не устанавливаются обновления.
  • Невозможно внести изменения в файл.

Заключение

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

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

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

Уведомление:

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

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

Решение:

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

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

$DB->Query("SET sql_mode=''");
$DB->Query("SET innodb_strict_mode=0");

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

$connection->queryExecute('SET sql_mode=""');
$connection->queryExecute("SET innodb_strict_mode=0");

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

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

Уведомление:

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

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

Решение:

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

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

define('BX_CRONTAB_SUPPORT', true);

Затем нужно добавить задачу в Crontab. Это можно сделать инструментами вашей панели управления или с помощью cli.

Уведомление:

Ошибка! Не настроен запуск cron_events.php на cron

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

Решение:

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

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

Уведомление:

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

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

Решение:

Необходимо добавить следующую строку в файл /public_html/.htaccess:

php_value max_input_vars 11000

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

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

Технический аудит

Технический аудит сайта – это комплексный анализ производительности сайта и качества его кода. Чтобы выполнить аудит сайта на Битриксе, необходимо обращаться к соответствующим специалистам, которые знают платформу и, помимо анализа, смогут устранить ошибки и произвести доработку.

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

Аудит даст ответы на следующие вопросы:

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

Проверка сайта на Битриксе штатными средствами

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

Проверка системы

Проверка конфигурации

Первое, с чего разработчики начинают проверку сайта после установки – это инструмент “Проверка системы”. С помощью него вы получите обобщенный ответ о состоянии и работоспособности жизненно-важных функций сайта. Это такие элементы системы, как работоспособность почты, баз данных, агентов, модулей сервера и др.

Если проверка элемента проходит успешно, вы увидите галочку и зеленую надпись напротив. В противном случае, вы увидите красную надпись и значок восклицательного знака.

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

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

Проверка ядра

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

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

Монитор производительности

Тестирование конфигурации

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

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

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

Тестирование настроек Битрикса

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

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

Замер производительности страниц сайта

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

Помимо этого, инструмент проверяет настройку компонентов на страницах, и если мониторинг обнаружит ошибку, она будет отображена в колонке «Ошибки разработки».

Колонка «Среднее время отклика» показывает насколько быстро открывается страница. Как правило, главная страница и каталог являются самыми нагруженными и медленными. Следует проводить анализ кода шаблонов компонентов тех страниц, где среднее время отклика превышает значение 0,5 сек.

Монитор качества

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

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

Сканер безопасности

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

Скорость сайта

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

По мнению Битрикса, сайт работает медленно, если загружается более 1,5 сек. Большинство интернет-магазинов могут выдавать такую оценку, так как компоненты каталога содержат тяжелый функционал, а главная и каталог являются загруженными страницами.

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

Заключение

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

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

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

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

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

1. Проверка системы

Самое простое и первое, что необходимо проверить, не выдает ли ошибки модуль «Проверка системы». Он находится по пути: Инструменты — Проверка системы. Кликните на картинку для увеличения.

На открывшейся странице нужно нажать кнопку начать тестирование.

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

2. Сканер безопасности

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

в результате появится страница с сообщениями об ошибках и рекомендациями что необходимо предпринять

3. Монитор производительности

Зайти в настройки модуля «Монитор производительности» (Настройки > Настройки продукта > Настройки модулей > Монитор производительности) И проверить что все настроено вот так:

Далее запускаем монитор производительности на 1 час:.

После того, как отработает тест конфигурации, мы увидим оценку производительности системы.
Чем выше цифра, тем быстрее работает сайт. Если цифра меньше 30, значит работоспособность системы очень низкая и нужно либо оптимизировать настройки сервера (например повысить тариф на хостинге, или выбрать спец.тариф под Битрикс), либо обратиться к разработчикам, чтобы они оптимизировали скрипты сайта и увеличили производительность. Далее переходим на сайт и работаем с ним как пользователи: открываем карточки товаров, пользуемся фильтром, поиском, сравнением, оформляем заказы и т.п. В результате монитор производительности запишет какие скрипты сайта отрабатывают дольше всего. Эта информация так же потребуется программистам, чтобы понять где искать проблемы и что оптимизировать.

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

Правильное создание резервных копий сайта

Перенос сайта НЕ рекомендуется осуществлять средствами битрикс (облако, restore.php) т.к. не редки случаи, когда резервная копия создается с неактуальными (устаревшими) данными и в неполном объеме. Используйте стандартные средства хостинга (FTP, SSH, встроенное резервное копирование) для переноса.

Проверка подключаемых скриптов и стилей

После переноса могут возникнуть проблемы с отображением css-стилей (графики) и js-скриптов. Кэш-система Битрикса генерирует уникальные пути до этих файлов в т.ч. в CDN (облаке), которые становятся неактуальны после переноса сайта.

Для решения проблемы необходимо очистить кэш из администраторской панели или очистить папки bitrix/cache и bitrix/managed_cache. Убедиться, что ваш браузер так же не закешировал состояние сайта до правок.

Проверка производительности

Проверка производительности замеряется на “чистой” установке редакции Битрикс, в таком случае, оценка будет объективной в 99% случаев. При проверке производительности уже наполненного и доработанного сайта (в т.ч. с установленными решениями из Маркетплейса) оценка производительности будет ниже в зависимости от качества используемых решений.

Экспорт товаров из 1С или CSV, XLSX, TXT

Рекомендуемый тип выгрузки товаров на сайт — синхронизация с 1С. При объемных выгрузках 1С разбивает список на части и сервер успевает принять данные без перегрузок. В случае экспорта товаров через файлы нет возможности автоматической разбивки, поэтому сервер может прекращать загрузку объемных выгрузок из-за timeout > 180 секунд.

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

После переноса сайтов на другой сервер нужно проверять таблицу прав (cmod), владельца и группу прав.

Неправильно установленные права доступа будут оказывать деструктивное влияние на работу сайта, при этом скрипты 1С Битрикса (например, обновления или тест проверки) могут ссылаться на некорректную настройку параметров PHP (php.ini).

Файлы кэша

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

В админ. панеле, в разделе настроек кеширования, на вкладке «Очистка файлов кеша» можно использовать инструмент в разделе настроек кеширования, на вкладке «Очистка файлов кэша».

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

Пример ошибки:

BitrixMainDBConnectionException] Mysql connect error [localhost, 127.0.0.1]: Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2) (400)

Для решения вопроса, можно использовать SSH или FTP доступ  (рекомендуется использовать крайне осторожно) для очистки каталогов «/bitrix/cache/ » и «/bitrix/managed_cache/»
После — выполнить запрос в MySQL «TRUNCATE TABLE b_cache_tag» и  проверить работу.

Кэширование меню

В некоторых случаях, для каждого меню создается отдельный кэш при разных ссылках для разных пользователей, из-за этого размер папки с кэшем меню «/bitrix/managed_cache/MYSQL/menu/»  может превышать размер сайта.

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

«CACHE_SELECTED_ITEMS» => «N», // Не создавать кэш меню для каждой страницы

Если меню не модифицируется для разных пользователей, то права доступа не учитываем:

«MENU_CACHE_USE_GROUPS» => «N», // Выключить учет прав доступа

Указать корректный домен

Если подразумевается тестирование на техническом домене или смена домена, то  в настройках Облака 1С Битрикс: ВАШДОМЕН/bitrix/admin/bitrixcloud_cdn.php?lang=ru потребуется новый домен.

Некорректный ответ сервера

В случае получения ошибки «Некорретный ответ сервера» требуется закомментировать код в /bitrix/modules/main/tools/upload.php

Файл robots.txt

Рекомендуется исключать из поискового индекса служебные запросы путем указания их в файле robots.txt

Cбор данных «Пути по сайту»

В некоторых редакциях  1С-Битрикс есть опция «Пути по сайту», которую для оптимизации работы нужно отключать. в разделе «Настройка данных» — убрать отметку с пункта «Собирать данные для отчета «Пути по сайту»?» — «Сохранить».

Правильное создание резервных копий сайта

Перенос сайта НЕ рекомендуется осуществлять средствами битрикс (облако, restore.php) т.к. не редки случаи, когда резервная копия создается с неактуальными (устаревшими) данными и в неполном объеме. Используйте стандартные средства хостинга (FTP, SSH, встроенное резервное копирование) для переноса.

Проверка подключаемых скриптов и стилей

После переноса могут возникнуть проблемы с отображением css-стилей (графики) и js-скриптов. Кэш-система Битрикса генерирует уникальные пути до этих файлов в т.ч. в CDN (облаке), которые становятся неактуальны после переноса сайта.

Для решения проблемы необходимо очистить кэш из администраторской панели или очистить папки bitrix/cache и bitrix/managed_cache. Убедиться, что ваш браузер так же не закешировал состояние сайта до правок.

Проверка производительности

Проверка производительности замеряется на “чистой” установке редакции Битрикс, в таком случае, оценка будет объективной в 99% случаев. При проверке производительности уже наполненного и доработанного сайта (в т.ч. с установленными решениями из Маркетплейса) оценка производительности будет ниже в зависимости от качества используемых решений.

Экспорт товаров из 1С или CSV, XLSX, TXT

Рекомендуемый тип выгрузки товаров на сайт — синхронизация с 1С. При объемных выгрузках 1С разбивает список на части и сервер успевает принять данные без перегрузок. В случае экспорта товаров через файлы нет возможности автоматической разбивки, поэтому сервер может прекращать загрузку объемных выгрузок из-за timeout > 180 секунд.

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

После переноса сайтов на другой сервер нужно проверять таблицу прав (cmod), владельца и группу прав.

Неправильно установленные права доступа будут оказывать деструктивное влияние на работу сайта, при этом скрипты 1С Битрикса (например, обновления или тест проверки) могут ссылаться на некорректную настройку параметров PHP (php.ini).

Файлы кэша

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

В админ. панеле, в разделе настроек кеширования, на вкладке «Очистка файлов кеша» можно использовать инструмент в разделе настроек кеширования, на вкладке «Очистка файлов кэша».

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

Пример ошибки:

BitrixMainDBConnectionException] Mysql connect error [localhost, 127.0.0.1]: Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2) (400)

Для решения вопроса, можно использовать SSH или FTP доступ  (рекомендуется использовать крайне осторожно) для очистки каталогов «/bitrix/cache/ » и «/bitrix/managed_cache/»
После — выполнить запрос в MySQL «TRUNCATE TABLE b_cache_tag» и  проверить работу.

Кэширование меню

В некоторых случаях, для каждого меню создается отдельный кэш при разных ссылках для разных пользователей, из-за этого размер папки с кэшем меню «/bitrix/managed_cache/MYSQL/menu/»  может превышать размер сайта.

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

«CACHE_SELECTED_ITEMS» => «N», // Не создавать кэш меню для каждой страницы

Если меню не модифицируется для разных пользователей, то права доступа не учитываем:

«MENU_CACHE_USE_GROUPS» => «N», // Выключить учет прав доступа

Указать корректный домен

Если подразумевается тестирование на техническом домене или смена домена, то  в настройках Облака 1С Битрикс: ВАШДОМЕН/bitrix/admin/bitrixcloud_cdn.php?lang=ru потребуется новый домен.

Некорректный ответ сервера

В случае получения ошибки «Некорретный ответ сервера» требуется закомментировать код в /bitrix/modules/main/tools/upload.php

Файл robots.txt

Рекомендуется исключать из поискового индекса служебные запросы путем указания их в файле robots.txt

Cбор данных «Пути по сайту»

В некоторых редакциях  1С-Битрикс есть опция «Пути по сайту», которую для оптимизации работы нужно отключать. в разделе «Настройка данных» — убрать отметку с пункта «Собирать данные для отчета «Пути по сайту»?» — «Сохранить».

При попытке запустить битрикс файл restore.php получаю ошибку Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.
Первоначально ошибку связывал с тем, что сайт был создан в однобайтовой кодировке, а файл restore.php был в кодировке UTF-8
В результате сервер не мог обработать запрос. После смены кодировки файла restore.php на WINDOWS-1251 проблема не была решена.

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

500 Internal Server Error.png

Файл robots.txt

Рекомендуется исключать из поискового индекса служебные запросы путем указания их в файле robots.txt

Cбор данных «Пути по сайту»

В некоторых редакциях  1С-Битрикс есть опция «Пути по сайту», которую для оптимизации работы нужно отключать. в разделе «Настройка данных» — убрать отметку с пункта «Собирать данные для отчета «Пути по сайту»?» — «Сохранить».

Правильное создание резервных копий сайта

Перенос сайта НЕ рекомендуется осуществлять средствами битрикс (облако, restore.php) т.к. не редки случаи, когда резервная копия создается с неактуальными (устаревшими) данными и в неполном объеме. Используйте стандартные средства хостинга (FTP, SSH, встроенное резервное копирование) для переноса.

Проверка подключаемых скриптов и стилей

После переноса могут возникнуть проблемы с отображением css-стилей (графики) и js-скриптов. Кэш-система Битрикса генерирует уникальные пути до этих файлов в т.ч. в CDN (облаке), которые становятся неактуальны после переноса сайта.

Для решения проблемы необходимо очистить кэш из администраторской панели или очистить папки bitrix/cache и bitrix/managed_cache. Убедиться, что ваш браузер так же не закешировал состояние сайта до правок.

Проверка производительности

Проверка производительности замеряется на “чистой” установке редакции Битрикс, в таком случае, оценка будет объективной в 99% случаев. При проверке производительности уже наполненного и доработанного сайта (в т.ч. с установленными решениями из Маркетплейса) оценка производительности будет ниже в зависимости от качества используемых решений.

Экспорт товаров из 1С или CSV, XLSX, TXT

Рекомендуемый тип выгрузки товаров на сайт — синхронизация с 1С. При объемных выгрузках 1С разбивает список на части и сервер успевает принять данные без перегрузок. В случае экспорта товаров через файлы нет возможности автоматической разбивки, поэтому сервер может прекращать загрузку объемных выгрузок из-за timeout > 180 секунд.

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

После переноса сайтов на другой сервер нужно проверять таблицу прав (cmod), владельца и группу прав.

Неправильно установленные права доступа будут оказывать деструктивное влияние на работу сайта, при этом скрипты 1С Битрикса (например, обновления или тест проверки) могут ссылаться на некорректную настройку параметров PHP (php.ini).

Файлы кэша

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

В админ. панеле, в разделе настроек кеширования, на вкладке «Очистка файлов кеша» можно использовать инструмент в разделе настроек кеширования, на вкладке «Очистка файлов кэша».

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

Пример ошибки:

BitrixMainDBConnectionException] Mysql connect error [localhost, 127.0.0.1]: Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2) (400)

Для решения вопроса, можно использовать SSH или FTP доступ  (рекомендуется использовать крайне осторожно) для очистки каталогов «/bitrix/cache/ » и «/bitrix/managed_cache/»
После — выполнить запрос в MySQL «TRUNCATE TABLE b_cache_tag» и  проверить работу.

Кэширование меню

В некоторых случаях, для каждого меню создается отдельный кэш при разных ссылках для разных пользователей, из-за этого размер папки с кэшем меню «/bitrix/managed_cache/MYSQL/menu/»  может превышать размер сайта.

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

«CACHE_SELECTED_ITEMS» => «N», // Не создавать кэш меню для каждой страницы

Если меню не модифицируется для разных пользователей, то права доступа не учитываем:

«MENU_CACHE_USE_GROUPS» => «N», // Выключить учет прав доступа

Указать корректный домен

Если подразумевается тестирование на техническом домене или смена домена, то  в настройках Облака 1С Битрикс: ВАШДОМЕН/bitrix/admin/bitrixcloud_cdn.php?lang=ru потребуется новый домен.

Некорректный ответ сервера

В случае получения ошибки «Некорретный ответ сервера» требуется закомментировать код в /bitrix/modules/main/tools/upload.php

Файл robots.txt

Рекомендуется исключать из поискового индекса служебные запросы путем указания их в файле robots.txt

Cбор данных «Пути по сайту»

В некоторых редакциях  1С-Битрикс есть опция «Пути по сайту», которую для оптимизации работы нужно отключать. в разделе «Настройка данных» — убрать отметку с пункта «Собирать данные для отчета «Пути по сайту»?» — «Сохранить».

При попытке запустить битрикс файл restore.php получаю ошибку Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.
Первоначально ошибку связывал с тем, что сайт был создан в однобайтовой кодировке, а файл restore.php был в кодировке UTF-8
В результате сервер не мог обработать запрос. После смены кодировки файла restore.php на WINDOWS-1251 проблема не была решена.

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

500 Internal Server Error.png

11.06.2023
Проблема кеширования битрикс меню подразделов
В новой версии обновления битрикс вылезла проблема с кешем меню выпадающих пунктов раздела (меню вида .тип_меню.menu_ext.php). При переходе по ссылкам в боковом меню раздела всегда будет подменю раздела на который зашли впервые и после этого наглухо закешируется, т.е. пункты подменю всегда одни и теже и не меняются. Отключать кеширование компонента не есть правильно, и не рекомендуется.
ID: 459

08.06.2023
Один важный Seo совет владельцам битрикс сайтов
Владельцам битрикс сайтов редакции от Стандарт и выше, я рекомендую отключать редиректы в проактивной защите для /bitrix/redirect.php и /bitrix/rk.php
ID: 458

04.06.2023
SLAM Продуманная форма обратной связи
На днях обнаружил, что многие бесплатные модули пропали из маркетплейс когда битрикс отключил их из-за отсутствия поддержки РНР 8.1. Хороший модуль SLAM Продуманная форма обратной связи пал в неравной борьбе
ID: 457

Понравилась статья? Поделить с друзьями:
  • Была сделана ошибка в верстке
  • Билеты пдд с разбором ошибок
  • Была проведена работа над ошибками
  • Билет с ошибкой чего делать
  • Была ошибка при установки флешки как исправить