Команда cp с ключом -r рекурсивно копирует каталоги, но что делать когда в каталоге есть вложенные скрытые каталоги/файлы? Например такие
Определение реального ip сайта за cloudflare
Защита Cloudflare постоянно совершенствуется, при парсинге прокси пачками улетают в бан. Но эта защита окажется бесполезна, если есть возможность узнать
Отложенное выполнение php кода — стэк с таймаутами
Речь пойдет не о выполнении кода в потоке одного скрипта с таймаутами, а о задаче очередности некоего стека php кода
Хранимые процедуры MySQL, локальные и пользовательские переменные
Не всегда удобно умещать необходимые действия над СУБД в сложные sql запросы. Иногда в одном запросе действия могут конфликтовать друг
Быстрое удаление неиспользуемого CSS кода
В Chrome Dev Tools существует инструмент «покрытие» — Coverage, помогающий сделать подсветку неиспользуемого кода. Но он не удобен тем, что
Функции ltrim и rtrim для javascript
Встроенных функций или методов ltrim и rtrim по аналогии с php в javascript не существует, есть нестандартные и не поддерживаемые
Git посмотреть/поменять данные пользователя user.name, user.email
На github есть график на главной странице профиля, показывающий contributions по дням в различные проекты. Они могут перестать фиксироваться в
Ускорение wi fi и выбор наиболее оптимального канала в роутере
Если wi-fi сетей рядом с вашим роутером достаточно много, зачастую они работают на тех же каналах что и ваш, перекрывая
Повреждены бинлоги реплик, Relay log read failure: Could not parse relay log
Вырубился сервер реплик, включаем и при попытке запуска слэйва получаем ошибку Relay log read failure
Ориентация экрана в Linux командой xrandr
Когда кода у программиста становится слишком много, его листинг удобнее смотреть на вертикальном мониторе. Крутить его программно можно в терминале командой xrandr
Опасность копирования и вставки кода в терминал прямо с web страниц
НИКОГДА не следует копировать команды и вставлять их прямо в свой терминал. Спросите любого разработчика или администратора, копировали ли они
Включить поддержку curl в php
Если мы собрали php по минималке и у нас отсутствует данный полезный модуль, а проверить это можно просто командой в cli
Блокировка форм, защита от повторных кликов
Зачастую при отправке форм с ajax нужно подстраховаться от их повторной отправки. Можно пойти велосипедами — через объявление некой булевой
Javascript функция проверки видимости элемента на странице
Стандартные функции jquery с использованием псевдоклассов is(«:visible»), is(«:hidden») не решают такой задачи, когда нужно определить что элемент находится в зоне
Ubuntu навсегда избавляемся от ввода sudo пароля в терминале
Постоянно вводить пароль в терминале для доступа с правами суперпользователя — это затраты времени. Открыли/закрыли терминал и заново приходится вводить
Ошибки в ssh терминале Ásbrú Connection Manager: GLib-LOG **: setenv() / Gtk-WARNING
При подключении по ssh в asbru-cm в окружении GNOME можем наблюдать следующие ошибки GLib-LOG **: setenv() / Gtk-WARNING
Замена SFTP MobaXterm для Linux в Desktop GNOME
MobaXterm — отличная программка для винды, позволяющая гораздо лучше всяких других ssh клиентов(Putty, Kitty) познакомиться с unix системами, благодаря автоматическому
Как вернуть языковые настройки в Ubuntu 20.04
При смене окружений рабочего стола и последующем их удалении/переустановке могут слететь языковые настройки. После настойки системы под себя с классическим
Sphinx 3.4.1 — настройка сервиса одной командой, с автозагрузкой, ротацией логов и php api
Добавил автоматическую сборочку, со всем необходимым для быстрой настройки sphinxsearch сервиса одной командой, для индексации MySQL бд и работы с
SphinxClient API с подсветкой сниппетов
Простенькое sphinx api на php возвращающее лишь массив, без всего лишнего. Метод buildExcerpts для построения сниппетов юзать совершенно не обязательно.
Быстрый патч nginx конфигов пула при переносе серверов в ispmanager 6
В крайней 6 версии isp панели разработчики учинили конкретный дебилизмус, распределив fpm сокеты под каждый сайт и обозвав их тупо
Настройка http авторизации для nginx страниц на примере phpmyadmin
Для дополнительной защиты закроем phpmyadmin http авторизацией, оставив без пароля доступ лишь для подсети своего провайдера.
Установка memcached сервера для php
Memcached используется в основном для сохранения в оперативке данных сложный выборки бд. Ставится в пару команд
Асинхронность в PHP. Отдать ответ клиенту и продолжить выполнение скрипта.
Иногда требуется продолжить выполнение php скрипта, после отдачи HTTP ответа(вывода) клиенту. Т.е. задача чтобы клиент «отвалился» не ожидая полного выполнения
Всё что нужно вашему .htaccess — набор необходимых правил
В сети можно найти достаточно много различных примеров с правилами реврайтов в .htaccess , добрая половина из которых содержит ошибки,
Отключение псвевдоклассов :hover на элементах
Можно конечно использовать дополнительный класс или накидать костыль на js. Но например у нас есть bootstrap проект, с классами кнопок
VScode решение WebSocket close with status code 1006, channel 2: open failed: administratively prohibited: open failed
Если при подключении к удаленному серверу в расширении remote ssh возникает ошибка: WebSocket close with status code 1006 или же
Рандомизация строк и массивов с привязкой к определенному параметру
Бывает что нужно рандомизировать массив либо строку, но при этом сделать этот рандом неизменяемым. Например, есть у нас тайтлы страниц,
Как поменять местами элементы массива php. Выборка случайных элементов из массива в одну строку.
Пару полезных приёмов работы с массивами PHP, без излишних велосипедов. Поменять местами элементы в массиве Чтобы поменять местами элементы в
Определение/реализация последовательности чисел 2 через 2
Стоит задача реализовать последовательность чисел по условию 2 через 2, то есть числа должны идти в таком порядке: 0, 1,
Список основных команд в Linux
Системная информация arch отобразить архитектуру компьютера uname -m uname -r отобразить используемую версию ядра dmidecode -q показать аппаратные системные компоненты
Установка Docker Compose в Linux Debian и запуск своего тестового контейнера
1. Установка Docker Compose Для создания первого проекта при помощи Docker Compose нам понадобится предварительно установленный docker в системе и
Решение проблем с индексированием сложных запросов через UNION выборки с алиасом
Бывает так, что условие WHERE становится неадекватным настолько, что расставить индексы для быстрого запроса не представляется возможным. Либо не подходит
Описание параметров конфигурации sshd_config
Подробное описание параметров настройки sshd config
Как поднять mariadb сервер в docker — 5 команд за минуту
Запуск mariadb mysql в докере прост как мычание. Естественно, если у вас уже установлен docker. Если нет, установить docker за
Чистим сопли от старых установок mysql
После удаления старой версии mysql с сервера, не всегда получается сразу поставить новую. Например видим такие ошибки
Добавляем репликацию для ещё одной бд mysql
Теперь мы добавляем ещё бд к уже созданной и настроенной ранее репликации.
192.168.0.111 — master
192.168.0.222 — slave
Настройка slave сервера
Репликация отдельных баз mysql на 2 сервера
Есть два сервера:
192.168.0.111 — master
192.168.0.222 — slave
Настройка master сервера 192.168.0.111
В /etc/mysql/…
Быстрые ssh коммиты из релиза в продакшн, исключая отдельные файлы/каталоги
Предположим, находясь в рабочей области релизной версии требуется быстро отправить её в продакшен. При этом отдельные файлы/каталоги нужно оставить прежними(например
Установка пакетов отсутствующих в Git Bash для Windows
Вместе с Git для Windows поставляется замечательная программка с bash средой MINGW64, в которой однако отсутствует встроенный менеджер пакетов. Но
Парсим и ресайзим аватарки из пс выдачи яндекса
Получать картинки будем из кеша chrome. Наша задача состоит не только в том, чтобы выдернуть картинки из кеша браузера, но
Перехват ошибок 404 и 50x во время проксирования
Предположим у нас есть сервер А проксирующий картинки с бекенд сервера Б. При этом мы не знаем, существует ли картинка