# deploy/ Скрипты применения обновлений на боевом сервере liderra.ru. ## redeploy.sh Server-side половина деплоя. На боевом лежит в `/var/www/liderra/redeploy.sh` (вне репозитория Laravel). Здесь — каноническая копия для версионирования и аудита. **Workflow деплоя:** 1. **Локально** — собрать архив кода + Vite-сборку: ```bash git archive HEAD app/ db/ | gzip > /tmp/deploy-code.tgz tar czf /tmp/deploy-build.tgz -C app/public build/ ``` 2. **scp** обоих архивов на сервер. 3. **На сервере** — распаковать в `/var/www/liderra/app/`, выставить владельца `www-data:www-data`, запустить `bash /var/www/liderra/redeploy.sh`. **NB:** `redeploy.sh` НЕ делает `git pull` — он рассчитан на то, что код уже залит scp. Если запустить без предварительного scp — будет no-op (composer install / migrate / optimize / restart на той же кодовой базе). **Квирк 107 (фикс встроен):** строка `sudo -u www-data php artisan optimize` обязательна. Без неё `optimize` запускался от `ubuntu` → `bootstrap/cache/config.php` с владельцем `ubuntu` → php-fpm (под `www-data`) не мог прочитать → 503 на всём портале. Инцидент 24.05.2026 03:46 UTC, портал лежал 18 минут. **Расхождение с боевым:** если правится этот файл — синкать на боевой (scp + проверка хеша). Боевой = source of truth для исполнения, репо = source of truth для рецепта.