Где хранить API-ключи в PHP-проекте и чего точно не делать
API-ключи нельзя оставлять в шаблонах, логах, git и публичных конфигах. Нужны env-переменные, права, технические пользователи и план ротации.
Читать статьюПолезные статьи о веб-разработке, технической поддержке и оптимизации сайтов.
API-ключи нельзя оставлять в шаблонах, логах, git и публичных конфигах. Нужны env-переменные, права, технические пользователи и план ротации.
Читать статьюОшибка permission denied при деплое через git часто возникает из-за разных пользователей, владельца .git, файлов от root, прав на vendor и runtime.
Читать статьюМиграция на production должна учитывать откат, индексы, большие таблицы, повторный запуск, проверку существования колонок и безопасную работу с данными.
Читать статьюCRM-форма Битрикс24 может открываться на сайте, но не создавать лид или сделку. Проверяем поля, ответственного, источник, права, виджет и дубли.
Читать статьюФоновые задачи часто ломаются незаметно. В статье — как проверять cron, очереди Yii2, блокировки, логи и зависшие процессы на рабочем проекте.
Читать статьюХорошее ТЗ экономит часы переписки. В нём должны быть цель, текущая проблема, ожидаемое поведение, ограничения, примеры, доступы и критерии приёмки.
Читать статьюИнтеграция не должна зависать из-за чужого API. Нужны таймауты, retry только для временных ошибок, логи, очереди и понятный статус операции.
Читать статьюОдна страница может открываться по разным URL: со слешем, UTM, сортировкой, фильтром, www и без www. Разбираем canonical и технические дубли.
Читать статьюУдаление дублей в MySQL требует проверки связей, выбора основной записи, временной таблицы, бэкапа и транзакции. Нельзя просто удалить всё по GROUP BY.
Читать статьюРезервную копию MySQL можно делать без остановки сайта, если понимать single-transaction, InnoDB, права, сжатие, хранение и проверку восстановления.
Читать статью