Nuxt

Доработка фронтенда

Чтобы вы увидели вносимые изменения в файлы фронтенд части решения следующей следующей инструкции.

Предполагается, что вы уже подключились по SSH и перешли в папку проекта, например:

cd /home/bitrix/www/frontend

Запуск в режиме разработки

Остановить текущие процессы PM2:

pm2 stop all 

Запустить dev-режим:

npm run dev 

После этого можно проверять и дорабатывать проект.

Перевод обратно в боевой режим

Остановить dev-режим (Ctrl + C в текущем терминале), затем выполнить:

npm run build && pm2 start all 

Что обычно делают дополнительно

Если в изменениях были обновлены зависимости:

npm install 

Проверить, что процессы подняты:

pm2 status 

Посмотреть логи при проблемах:

pm2 logs 

Восстановление после изменения версий зависимостей

Если вы вручную меняли версии пакетов (в package.json или командой npm install <пакет>@<версия>) и после этого проект перестал собираться или запускаться, проще всего откатить package.json и package-lock.json к оригинальным версиям из дистрибутива и переустановить зависимости заново.

1. Остановить процессы

pm2 stop all

Если запущен dev-режим — остановите его через Ctrl + C.

2. Удалить текущие зависимости и файлы версий

rm -rf node_modules package.json package-lock.json

3. Найти оригинальный архив фронтенда

Архив с оригинальными файлами лежит прямо на сервере:

ПУТЬ_К_САЙТУ/bitrix/wizards/astdesign/marketpro/site/public/frontend.zip

(вместо ПУТЬ_К_САЙТУ подставьте путь к корню вашего сайта на сервере, например /home/bitrix/www)

Зайдите на сервер по SFTP (те же данные подключения, что и для SSH), перейдите по указанному пути и скачайте frontend.zip к себе на компьютер.

Не распаковывайте архив прямо на сервере — если распаковка заденет не ту папку, можно сломать ещё что-то в рабочем проекте. Безопаснее скачать архив к себе и работать с ним локально.

4. Распаковать архив локально

Распакуйте скачанный frontend.zip у себя на компьютере любым архиватором — вам понадобятся только два файла из него: package.json и package-lock.json.

5. Загрузить эти два файла обратно на сервер

Через тот же SFTP-клиент загрузите package.json и package-lock.json из распакованного архива в папку проекта на сервере (/home/bitrix/www/frontend), заменив текущие файлы.

Важно: загружайте именно эти два файла, а не весь архив целиком — иначе затрёте остальные наработки в коде.

6. Установить зависимости заново по оригинальным версиям

npm install

7. Собрать проект и запустить процессы

npm run build && pm2 start all

8. Проверить результат

pm2 status
pm2 logs

Если после этого сайт снова заработал — значит проблема была именно в изменённых версиях пакетов.

Перезапустить клиентскую часть

Клиентская часть работает под менеджером процессов PM2. Перезапуск нужен, когда сайт отдаёт ошибку, подвис после обновления или вы правили окружение вручную.

Под пользователем bitrix:

pm2 restart all

Под root — либо переключитесь на bitrix, либо выполните команду от его имени:

su bitrix
pm2 restart all
sudo -u bitrix env PATH=$PATH pm2 restart all

Запускать PM2 от root не нужно: процесс, поднятый под другим пользователем, не увидит нужные права на файлы сайта.

После перезапуска проверьте состояние:

pm2 list

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