-
Устранение майнера moneroocean xmrig
Всем привет! Не так давно ко мне обратились за помощью для устранения вредоносного ПО на сайте – майнера moneroocean xmrig который после удаления всегда появлялся по пути /tmp/.tmp/moneroocean/config_background.json Первичная уязвимость оказалась в том, что на хостинге забыли удалить сайт по умолчанию в /home/bitrix/www – в итоге установочные скрипты были доступны по IP адресу сервера, чем…
-
Что делать при обнаружении взлома сайта на 1С Битрикс? Практические рекомендации
Волею судеб попал на ветку официального форума 1С Битрикс по взлому данной системы управления сайтом – как то в давнее время несколько клиентов были взломаны, пришлось вникать в тему. Собственно, тема актуальна и по сей день – в форум постоянно приходят новые люди с той же самой проблемой. “Сайт на движке Битрикс взломали – что…
-
VMBitrix настройка почты на mail.ru
Ранее я настраивал почту без привлечения стороннего почтового сервера, по такому мануалу https://dev.1c-bitrix.ru/community/webdev/user/53386/blog/11674/ Но такая настройка не проста, несколько постов на эту тему https://gtalex.ru/?s=%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0+%D0%BF%D0%BE%D1%87%D1%82%D1%8B Так же, на сколько я помню, при таком подходе есть проблемы, когда на хостинге несколько сайтов. В общем в этот раз я решил, что почтой должен заниматься почтовый сервер – имхо…
-
Битрикс – сайт редиректит на старый домен
Бывает, что при настройке локальной разработки или тестовой среды сайт упорно редиректит на старый сайт – такое часто бывает если БД переносится не средствами бэкапа Битрикса. Чтобы запустить админку временно в файле “bitrix/modules/main/include.php” комментируем строки 162 и 163 подключающие OnPageStart foreach (GetModuleEvents(“main”, “OnPageStart”, true) as $arEvent) ExecuteModuleEventEx($arEvent); либо временно убрать папку /bitrix/modules/security/ из /modules/ далее…
-
BITRIX – убираем атрибуты type в теге script и лишние закрывающие слешы
При проверке на валидность страницы сайта на CMS Битрикс валидатор ругается на присутствие type в теге script (устаревший атрибут) Warning: The type attribute is unnecessary for JavaScript resources. а так же на лишний закрывающий тег в одиночных тегах (тоже устаревшая запись) Trailing slash on void elements has no effect and interacts badly with unquoted attribute…
-
Особенности настройки GitLab CI CD для работы с Bitrix
Чтобы не “париться” с настройкой прав для пользователя gitlab_runner на сервере с bitrix env очень удобно чтобы раннер работал под юзером bitrix в его домашней папке изначально. Решение gitlab-runner uninstall gitlab-runner install –working-directory /home/bitrix –user bitrix # проверяем, что настройки применились cat /etc/systemd/system/gitlab-runner.service reboot systemctl daemon-reload источник
-
Битрикс портал – правка ошибки MySQL query error! Got a packet bigger than ‘max_allowed_packet’ bytes
Кейс от клиента: При авторизации на портале Битрикс 24 (коробка) ошибка MySQL query error! Got a packet bigger than ‘max_allowed_packet’ bytes (весь текст не буду выкладывать – смысл понятен) Если решать в лоб и быстро, то поможет /etc/my.cnf max_allowed_packet = 32M service mysqld restart решил разобраться, в чём собственно дело видно, что на update в…
-
Битрикс – поиск событий обработчика
Проблема – обработчик FilmVersionSave слушающий событие OnIBlockElementUpdate задваивает результат. Хотел поискать что ещё “повешано” на этот метод, не нашел подходящего API Только такое $eventManager = \Bitrix\Main\EventManager::getInstance(); $handlers = $eventManager->findEventHandlers(“iblock”, “OnBeforeIBlockElementUpdate”); тут нужно знать с какого модуля и какое событие, а мне наоборот – все события которые повесили на обработчик … Решение – табличка b_module_to_module в…
-
Дружим JQuery Styler и Vue JS в реализации 1С Битрикс API
Всем привет! Очень давно не писал – просто некогда. В отличие от времени когда я работал админом, сейчас, работая веб программистом свободного времени практически нет – всегда есть работа, которую нужно работать 🙂 Само по себе решение дружбы JQuery Styler и Vue JS конечно не лучший вариант, в идеале вообще нужно выкинуть JQuery и реализовать…
-
Битрикс – чистим b_sale_viewed_product
global $DB; $viewed_time = COption::GetOptionString(“sale”, “viewed_time”, “90”); $viewed_time = IntVal($viewed_time); $strSql = “DELETE “. “FROM b_sale_viewed_product “. “WHERE TO_DAYS(DATE_VISIT) < (TO_DAYS(NOW()) – “.$viewed_time.”) LIMIT 10000000″; $db_res = $DB->Query($strSql, false, “File: “.__FILE__.” Line: “.__LINE__); Фактически это код метода CSaleViewedProduct::ClearViewed() с увеличенным лимитом (1000 -> 10000000), который можно запускать автономно через ком. строку PHP. Лимит вообще можно…
-
bitrix cli в режиме watch не видит изменений vue – решение
При работе с bitrix cli в режиме watch столкнулся с проблемой – при изменении в vue файлах проект не пересобирается, что оцень неудобно – постоянно приходится в ручную запускать bitrix build. Для решения необходимо модифицировать два файла /usr/local/lib/node_modules/@bitrix/cli/src/utils/is-allowed.js в строке 22 в switch добавляем строку case ‘.vue’ /usr/local/lib/node_modules/@bitrix/cli/src/tools/watch.js в строке 21 (функция createPattern) в цикл…
-
PHP скрипт поиска изменённых файлов
В текущей разработке сделал скриптик, может кому пригодиться 🙂 Ищет изменённые файлы по маске “*.php” в рутовой директории, за исключением [“bitrix”, “upload”, “local”] за последние сутки. Две доки по find с хорошими примерами https://www.dmosk.ru/miniinstruktions.php?mini=search-linux https://masterpro.ws/forum/6-linux/4710-kak-nayti-nedavno-modificirovannye-fayly-v-linux <? namespace WebSlon; ini_set(“xdebug.overload_var_dump”, “off”); echo “<pre>”; $lastModFiles = new LastModify(); $time_start = microtime(true); $res = $lastModFiles->getFiles(); var_dump($res); $time_end =…
-
MYSQL Убираем дубли из таблицы – есть ID и нет ID
MYSQL Убираем дубли из таблицы если есть поле ID CREATE TEMPORARY TABLE `t_temp` as ( SELECT min(id) as id FROM `table` GROUP BY name, surname ); DELETE from `table` WHERE `table`.id not in ( SELECT id FROM t_temp ); MYSQL Убираем дубли из таблицы если нет поля ID на примере таблицы b_user_access_check В текущей версии…
-
Полная очистка кеша memcashe
Чистка напрямую – соединяемся на порт и чистим командой telnet 127.0.0.1 11211 // присоединяемся flush_all // чистим quit // разрываем соединение php вариант $m = new Memcache(); $m->addServer(‘localhost’, 11211); $m->flush();
-
Быстрое удаление файлового кеша на сайте Битрикс.
Выполнить команду в php-командной строке >————— код ——————- $obCache = new CPHPCache(); $obCache->CleanDir(); >————————————— Все файлы кеша маркируются на удаление. Потом на сервере >————— код ——————- rm -rf /home/bitrix/www/bitrix/cache/*.~* >————————————— PS Это официальная информация от саппорта 1С-Битрикс (вообще Битрикс не рекомендует чистить кеш каким либо методом, кроме как из панели управления). Запрос делал в связи…
-
Битрикс – при изменении свойств элемента не отрабатывает OnBlockElementUpdate
Есть модуль по загрузке в Битрикс, где меняются свойства элемента инфоблока, НО OnBlockElementUpdate не отрабатывал. Меняю с админки – пашет! Ответ прост – в модуле для обновления свойств использовали не обновление элемента, а именно обновление свойств. Поставил обработчик на OnIBlockElementSetPropertyValuesEx – вуайля, событие поймалось!
-
Битрикс “Миграции” – скрипт для переноса изменений БД
Очень полезная штука по сабжу https://marketplace.1c-bitrix.ru/solutions/sprint.migration/ Автор молодец – всё чётко, понятно, удобно! Добавлю к себе в инструментарий полезных модулей.
-
Не работают Cookie на ядре D7 Битрикс
Писать совсем некогда! Работа в веб-студии это прям тема – времени нет ни на что 🙂 Но всё же этот пост не могу не опубликовать, если бы мне такое попалось – экономия 1-2 часа 🙂 (да, да – именно столько я не мог “воткнуть” почему не работают примеры из документации) Сегодня чуть мозг себе не…
-
Битрикс D7 – cоздание своего модуля
От слов к делу – начнём потихоньку заполнять пробелы в необходимых знаниях по Битрикс программированию … На последнем моём собеседовании с веб студией Слон один из вопросов технического директора компании ко мне был – есть ли у Вас опыт по разработке модулей в Битриксе? К сожалению тут я немного присел в лужу, т.к оного у…
-
Битрикс – как получить ссылки на изменение элемента
Продолжаем работу с сайтом по производству фотообоев в Новосибирске – решил добавить в свой компонент ссылки на редактирование элемента. В режиме правки сайта очень удобно сразу иметь возможность попасть на страничку редактирования элемента, для этого в шаблоне компонента нужно сформировать ссылки на редактирование элемента //получаем ссылки для редактирования и удаления элемента $arButtons = CIBlock::GetPanelButtons( $arItem[“IBLOCK_ID”],…