Все публикации

93 материала
Все статьи о разработке, базах данных и работе с ИТ-системами.
Linux

Работает вручную, но не в cron: проверяем окружение

Почему скрипт работает из терминала, но не из cron: пути, пользователь, рабочий каталог и вывод ошибок.

Читать →
JavaScript

FormData: что попадает в отправляемую форму

Какие поля попадают в FormData и почему Content-Type с multipart boundary лучше оставить браузеру.

Читать →
Linux

Ротация файлового журнала: конфиг logrotate и переоткрытие

Настраиваем logrotate для текстового журнала и проверяем, что после ротации приложение пишет в новый файл.

Читать →
MySQL

Составной индекс MySQL: порядок колонок начинается с запроса

Подбираем составной индекс MySQL под фильтр и сортировку списка заказов и проверяем его через EXPLAIN.

Читать →
PHP

strict_types в PHP: почему важен файл вызывающего кода

Где действует strict_types в PHP и почему проверка пользовательского ввода всё равно нужна.

Читать →
PostgreSQL

UPSERT для счётчика: конфликт должен иметь явный ключ

Увеличиваем счётчик через INSERT ON CONFLICT и отличаем конкурентный запрос от повторной доставки события.

Читать →
JavaScript

IntersectionObserver: отложенная загрузка с понятным запасным сценарием

Загружаем изображения при приближении к экрану через IntersectionObserver и оставляем запасной вариант для старых браузеров.

Читать →
Linux

Профили SSH: понятные подключения без длинных команд

Сохраняем пользователя, порт и ключ в SSH-профиле и проверяем, какие настройки клиент выбрал на самом деле.

Читать →
Linux

Измеряем этапы HTTP-запроса с curl

Измеряем DNS, соединение и время первого байта через curl, не приписывая всю задержку базе данных.

Читать →
MySQL

UNIQUE и NULL: почему допускается несколько незаполненных кодов

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

Читать →