Vmco

Ошибки при работе с 1С-Битрикс

После переноса вся публичная часть не видна без авторизации по логину и паролю

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

… и после авторизации все отображается правильно — перейдите в административную панель Битрикс и пройдите по пути: Настройки (Settings) → Настройки продукта (System settings) → Сайты (Sites) → Список сайтов (List of sites), выберите ваш сайт и проверьте значение поля «Путь к корневой папке веб-сервера для этого сайта (Path to the web server root folder of this site)», скорее всего там указан неправильный путь.

Рекомендуется оставить это поле пустым если вы не используете многосайтовость на разных доменах.

Если у вас возникли сложности, не описанные здесь, напишите нам на support@vmco.ru

При входе в административный интерфейс возникает сообщение об ошибке «Кодировка используемой вами базы данных MySql “utf8”, системе обновлений необходима кодировка “cp1251”. Обратитесь к администратору MySql для выполнения запроса alter database DATABASE_NAME default character set cp1251»

По умолчанию все сервисы виртуальной машины VMBitrix работают в кодировке UTF-8. По сравнению с кодировкой CP1251 (Windows-1251) UTF-8 предоставляет большие возможности по хранению информации на различных языках, подробнее можно узнать в Wikipedia.

Если по каким-либо причинам вы не можете перейти на использование UTF-8 — выполните указанный запрос самостоятельно.

Для этого перейдите в административный раздел Битрикс и пройдите по пути Настройки (Settings) → Инструменты (Tools) → SQL запрос (SQL query), скопируйте и вставьте запрос из сообщения об ошибке и выполните его.

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

Если у вас возникли сложности, не описанные здесь, напишите нам на support@vmco.ru

Зависает переиндексация статических файлов сайта

При попытке обновить поисковый индекс вашего сайта процесс зависает (длится очень долго и статус уже переиндексированных документов не обновляется). Если производить переиндексацию по отдельным модулям — зависание происходит только при выборе модуля «Статические файлы».

Для решения проблемы необходимо изменить параметры mbstring в файле /etc/php.ini:

mbstring.func_overload = 0
mbstring.internal_encoding = CP1251
и перезапустить web-сервер Apache чтобы новые параметры вступили в силу:
/etc/init.d/apache2 restart

Если у вас возникли сложности, не описанные здесь, напишите нам на support@vmco.ru

На любой странице сайта возникает ошибка:

The script encountered an error and will be aborted. To view extended error messages, enable this feature in .settings.php.

В новом ядре Битрикс, настройка параметров производится в файле bitrix/.settings.php (обратите внимание, что имя файла начинается с точки). Ранее, для этих задач использовался файл bitrix/php_interface/dbconn.php.

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

Поэтому первым делом, необходимо войти на сервер (по SSH или sFTP) и отредактировать файл bitrix/.settings.php. В нем следует найти строчку:

'debug' => false,
и изменить значение параметра debug на true, то есть строка должна принять вид:
'debug' => true,

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

Болле подробное описание всех параметров файла .settings.php есть на сайте разработчика.

Если у вас возникли сложности, не описанные здесь, напишите нам на support@vmco.ru

На любой странице возникает ошибка:

DB query error.
Please try later.

Эта ошибка абсолютно аналогична описанной выше, но возникает только в старом ядре Битрикс. Для включения вывода полного сообшения об ошибке войдите на сервер (по SSH или sFTP) и отредактируйте файл bitrix/php_interface/dbconn.php. В нем найдите строчку:

$DBDebug = false;
и измените значение переменной $DBDebug на true, то есть строка должна принять вид:
$DBDebug = true;

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

Если у вас возникли сложности, не описанные здесь, напишите нам на support@vmco.ru

На сайте возникает ошибка:

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

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

  1. Нехватка оперативной памяти.

    Если при разработке проекта не рассчитывалась большая нагрузка (со стороны пользователей или объема обрабатываемых данных), или при разработке была допущена ошибка, или параметры MySQL и Apache не оптимальны для проекта, то при всплеске активности может возникнуть переполнение оперативной памяти (RAM). В этом случае, операционная система, для поддержания собственной безопасности, принудительно завершает работу самого объемного процесса (для web-серверов это как правило именно MySQL).

    В этом случае, в системном журнале /var/log/syslog и на консоли сервера (доступ к которой можно получить в панели управления vCenter) будет содержаться сообщение вида:

    kernel: Out of memory: Kill process 1543 (mysqld) score 146 or sacrifice child
    
    В этом случае, перезагрузите сервер, для освобождения памяти и восстановления работы всех сервисов. Затем привлеките разработчиков для оптимизации скриптов и запросов к БД, для предотвращения возникновения ошибки в будущем. Либо, если оптимизация не представляется возможной, увеличить тарифный план, тем самым увеличить объем доступной памяти.

  2. Сервер не может стартовать из-за ошибки в конфигурации.

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

Если у вас возникли сложности, не описанные здесь, напишите нам на support@vmco.ru

Возникает ошибка любого MySQL запроса вида:

MySQL Query Error: SELECT … FROM … [Got error 28 from storage engine]

Ошибка может содержать любой SELECT, INSERT или UPDATE запрос, но при этом обязательно заканчивается уточнением Got error 28 from storage engine. Причиной ошибки является переполнения жесткого диска (HDD)

В этом случае, войдите на сервер по SSH и выполните команду df -h:

# df -h
Filesystem	Size	Used	Avail	Use%	Mounted on
/dev/sda2	9.6G	9.2G	0	100%	/
tmpfs	250M	0	250M	0%	/dev/shm
/dev/sda1	118M	102M	9.1M	92%	/boot
Основной раздел, в примере /dev/sda2 (так как он наибольший, что видно по колонке Size, и точка монтирования у него - корневая директория Mounted on /) используется на 100%

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

Если у вас возникли сложности, не описанные здесь, напишите нам на support@vmco.ru

↑ вернуться к оглавлению



Почему VM

Виртуальные машины — это свобода:

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

Почему мы

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

другие причины…

Попробовать бесплатно