-
Устранение майнера 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»],…