Когда требуется выполнить синхронизацию с внешним источником данных (например, с 1С), то 1С Битрикс может выдать следующую ошибку: «Время на сервере базы данных отличается от времени на веб-сервере больше, чем на 10 минут». Это означает, что необходимо проверить и настроить правильные временные зоны.
Разберем эту проблему детальнее. Можно выполнить простой фикс (грабли) в виде хука в файле /bitrix/php_interface/after_connect_d7.php
указать принудительно:
$connection->queryExecute("SET LOCAL time_zone='".date('P')."'");
Но мы рекомендуем разобраться детально в причинах проблемы, для этого подключитесь к серверу по SSH и проверьте командой ‘date’ время в операционной системе (здесь и далее мы работаем в CentOS 7.
В консоли мы сначала забекапим временные файлы:
[root@sx ~]# mv /etc/localtime /etc/localtime-backup
потом делаем линк на нужную нам часовую зону:
[root@sx ~]# ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime
И далее проверяем командой ‘date’ корректность нового времени.
Вот как это выглядит в терминале:
[root@sx ~]# mv /etc/localtime /etc/localtime-backup [root@sx ~]# date Wed Apr 8 17:19:38 UTC 2020 [root@sx ~]# ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime [root@sx ~]# date Wed Apr 8 20:19:46 MSK 2020
Далее подключаемся в MySQL / MariaDB и проверяем тайм-зону командой:
select current_timestamp;
В консоли это выглядит так:
[root@sx ~]# mysql Welcome to the MariaDB monitor. Commands end with ; or g. Your MariaDB connection id is 104506 Server version: 5.5.64-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. MariaDB [(none)]> select current_timestamp; +---------------------+ | current_timestamp | +---------------------+ | 2020-04-08 20:24:41 | +---------------------+ 1 row in set (0.00 sec) MariaDB [(none)]>
Если в MySQL / MariaDB неверное время, то выполняем следующее по определению default_time_zone: идем в /etc/my.cnf (CentOS) или /etc/mysql/my.cnf (Ubuntu) и после:
[root@sx ~] sudo /etc/init.d/mysqld restart
Сложные случаи конфликта во времени в SysConfig
Иногда так происходит, что еще одна отсылка ко времени сервера есть в:
/etc/sysconfig/clock
Вы можете поменять тайм-зону через ‘tzselect’, а в SysConfig, например, может быть прописано: ZONE=America/New_York
Это решается достаточно просто:
[root@sx ~]# vim /etc/sysconfig/clock ZONE="Europe/Moscow" UTC=true ARC=false
Временные зоны в PHP
Сейчас переходим к PHP, здесь тоже может быть нюанс, поэтому смотрим: /etc/php.ini
(из него билдится уже /etc/php.d/bitrixenv.ini) в ini-файле корректируем или добавляем:
timezone = Europe/Moscow
После изменений в php.ini нужно рестартнуть Апач:
service httpd restart
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
- Pick a username
- Email Address
- Password
By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.
Already on GitHub?
Sign in
to your account
Здесь VPS на BrainyCP за 2$ в месяц, а здесь 50GB шаред-хостинг на BrainyCP за 1.9$ в месяц
-
lexkosha
- Сообщения: 6
- Зарегистрирован: Сб июн 12, 2021 3:25 pm
Работа с сокетами Ошибка! Не работает Bitrix
Всем привет!
ребята подскажите как исправить ошибку «Работа с сокетами Ошибка! Не работает»
Делаю тест системы. Выдает ошибку, читал что нужно править файл хост, поправил как написано не помогло.
CentOS 7
Журнал проверки системы
2021-Jun-12 15:24:02 Наличие необходимых модулей php (check_php_modules): Ok
Все необходимые модули установлены
2021-Jun-12 15:24:02 Обязательные параметры PHP (check_php_settings): Ok
Настройки правильные
2021-Jun-12 15:24:02 Модули веб-сервера (check_security): Ok
Конфликтов не выявлено
2021-Jun-12 15:24:02 Значения переменных сервера (check_server_vars): Ok
Корректные
2021-Jun-12 15:24:03 Сохранение сессии (check_session): Ok
50% done
2021-Jun-12 15:24:03 Сохранение сессии (check_session): Ok
Успешно
2021-Jun-12 15:24:03 Параметры настройки UTF (mbstring и константа BX_UTF) (check_mbstring): Ok
Правильные. Сайт работает в UTF кодировке
2021-Jun-12 15:24:03 Служебные скрипты в корне сайта (check_install_scripts): Ok
Отсутствуют
2021-Jun-12 15:24:03 Работа с сокетами (check_socket): Fail
Connection to site.ru:80 Success
== Request ==
GET /bitrix/admin/site_checker.php?test_type=socket_test&unique_id=092382390232392832932 HTTP/1.1
Host: site.ru== Response ==
HTTP/1.1 404 Not Found
Server: nginx/1.20.1
Date: Sat, 12 Jun 2021 15:24:03 GMT
Content-Type: text/html; charset=iso-8859-1
Content-Length: 196
Connection: keep-alive== Body ==
<!DOCTYPE HTML PUBLIC «-//IETF//DTD HTML 2.0//EN»>
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
</body></html>==========
Ошибка! Не работает
2021-Jun-12 15:24:03 Выполнение агентов на cron (check_bx_crontab): Warning
Замечание. Агенты выполняются на хитах, рекомендуется перевести выполнение агентов на cron
2021-Jun-12 15:24:03 Параметры подключения к базе данных (check_dbconn_settings): Ok
Успешно
2021-Jun-12 15:24:03 Лишний вывод в файлах конфигурации (check_dbconn): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:03 Сохранение сессии без UserAgent (check_session_ua): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:03 Настройки сайтов (check_sites): Ok
Правильные
2021-Jun-12 15:24:03 Передача объектов по ссылке (check_clone): Ok
Успешно
2021-Jun-12 15:24:03 Размер стека и pcre.recursion_limit (check_pcre_recursion): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:03 Загрузка файла (check_upload): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:03 Загрузка файла больше 4Мб (check_upload_big): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:03 Загрузка файла через php://input (check_upload_raw): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:03 Передача POST запроса с большим числом параметров (check_post): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:03 Отправка почты (check_mail): Ok
Успешно
2021-Jun-12 15:24:03 Отправка почтового сообщения больше 64Кб (check_mail_big): Ok
Успешно
2021-Jun-12 15:24:03 Проверка на наличие неотправленных сообщений (check_mail_b_event): Ok
Успешно
2021-Jun-12 15:24:03 Внутреннее перенаправление (функция LocalRedirect) (check_localredirect): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:03 Фактическое ограничение памяти (check_memory_limit): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:04 Работа с файлами кеша (check_cache): Ok
Успешно
2021-Jun-12 15:24:04 Доступ к серверу обновлений (check_update): Ok
Успешно
2021-Jun-12 15:24:04 HTTP авторизация (check_http_auth): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:04 Создание и запуск файла (check_exec): Warning
Замечание. Не удалось проверить из-за ошибки в работе с сокетами
2021-Jun-12 15:24:04 Функция getimagesize для swf (check_getimagesize): Ok
Успешно
2021-Jun-12 15:24:04 Версия MySQL-сервера (check_mysql_bug_version): Ok
Успешно
2021-Jun-12 15:24:05 Время на БД и веб-сервере (check_mysql_time): Fail
Ошибка! Время отличается на 10800 секунд
2021-Jun-12 15:24:05 Режим работы MySQL (check_mysql_mode): Ok
Успешно
2021-Jun-12 15:24:05 Кодировка соединения (check_mysql_connection_charset): Ok
character_set_connection=utf8, collation_connection=utf8_unicode_ci, character_set_results=utf8
Успешно
2021-Jun-12 15:24:05 Кодировка базы данных (check_mysql_db_charset): Ok
CHARSET=utf8, COLLATION=utf8_unicode_ci
Успешно
97% done
2021-Jun-12 15:24:22 Структура базы данных (check_mysql_table_structure): Ok
Успешно
-
sbury
- Сообщения: 1171
- Зарегистрирован: Вт фев 06, 2018 7:51 am
Re: Работа с сокетами Ошибка! Не работает Bitrix
Сообщение
sbury » Сб июн 12, 2021 9:39 pm
в файле /etc/hosts, первой строкой добавьте запись
127.0.0.1 _ваш_домен_
при помощи команды
hostname
проверьте какой он у вас вообще прописан в системе. bitrix требует запись полного доменного имени в системе
Второе, сертификат SSL должен быть выдан данному домену.
И третье, если в DNS есть запись ipv6 типа АААА, и она не подключена к домену, или есть не существующая, она должна быть удалена
Пока хоть одно из этих условий не выполнено , вы будете получать данную ошибку.
-
sbury
- Сообщения: 1171
- Зарегистрирован: Вт фев 06, 2018 7:51 am
Re: Работа с сокетами Ошибка! Не работает Bitrix
Сообщение
sbury » Вс июн 13, 2021 8:03 am
показывайте что прописано. А так же вывод hostname. Можете в личку
-
lexkosha
- Сообщения: 6
- Зарегистрирован: Сб июн 12, 2021 3:25 pm
Re: Работа с сокетами Ошибка! Не работает Bitrix
Сообщение
lexkosha » Вт авг 31, 2021 8:44 pm
Сегодня попробовал по новой все поднять. К сожалению решить проблему не удалось. Может кто то сталкивался и победил?
-
confignsk
- Сообщения: 14
- Зарегистрирован: Пн дек 21, 2020 1:38 am
Re: Работа с сокетами Ошибка! Не работает Bitrix
Сообщение
confignsk » Чт окт 14, 2021 8:19 am
Всем добрый день! Какие варианты еще решений можно использовать ?
При проверке соединения с сайтом 1С-Битрикс из 1С:Комплексная автоматизация, редакция 1.1 возникает ошибка:
Авторизация не выполнена.
Не удалось установить соединение с сервером. Проверьте имя пользователя и пароль.
Ответ сервера: failure
Время на сервере базы данных отличается от времени на веб-сервере больше, чем на 10 минут. Вероятно неправильно настроены временные зоны. Выполните настройку и повторите обмен.
Не удалось установить соединение.
Имя пользователя и пароль в данном случае верные. Дело во времени на сервере базы данных. Для настройки времени необходимо сделать следующее.
1. Определим свой часовой пояс. Сделать это можно, например, здесь: http://php.net/manual/en/timezones.php
В моем случае это «Asia/Novosibirsk«.
2. Устанавливаем часовой пояс для PHP. Для этого нужно отредактировать файл /bitrix/php_interface/dbconn.php и внести в него следующее:
date_default_timezone_set(«Asia/Novosibirsk«);
3. Устанавливаем часовой пояс для MySQL в файле /bitrix/php_interface/after_connect.php:
$DB->Query(«SET LOCAL time_zone='».date(‘P’).»‘»);
В файле /bitrix/php_interface/after_connect_d7.php:
$connection->queryExecute(‘SET LOCAL time_zone=»‘.date(‘P’).‘»‘);
Часовой пояс будет браться из настроек PHP.
Иногда система может не содержать информацию об отмене перехода на зимнее время в РФ. В это случае можно использовать прямое указание сдвига относительно GMT, например, для Москвы будет:
date_default_timezone_set(«Etc/GMT-4»);
$DB->Query(«SET LOCAL time_zone=’Etc/GMT-4′»);
Ошибка обмена с 1С: «Время на сервере базы данных отличается от времени на веб-сервере больше, чем на 10 минут»
При обмене магазина на 1С-Битрикс с 1С Управление торговлей 11 (УТ 11) можно получить следующую ошибку:
Ответ сервера: failure Время на сервере базы данных отличается от времени на веб-сервере больше, чем на 10 минут. Вероятно неправильно настроены временные зоны. Выполните настройку и повторите обмен.
Это означает, что время PHP на хостинге или виртуальном сервере отличается от времени на компьютере где установлена 1С УТ 11.
Поправить это очень просто, достаточно в файле настроек PHP:
/bitrix/php_interface/dbconn.php
вписать строку:
date_default_timezone_set(«Etc/GMT-4»);
(«Etc/GMT-4») — это часовой пояс Москвы, если у вас другой часовой пояс можно просто рассчитать от московского. Например для Новосибирска будет:
date_default_timezone_set(«Etc/GMT-6»);
Вот так легко вы избавитесь от ошибки «Время на сервере базы данных отличается от времени на веб-сервере больше, чем на 10 минут».
Количество показов: 9275
Возврат к списку

