Top.Mail.Ru
Ответы

Перезапуск сервера Next js

Добрый день столкнулся с проблемой. На сервере размещён проект на NextJS, и запущен(сайт доступен по нужному адресу). При внесении изменений, будь это новый код или новый файл, эти изменения не показываются на сайте. Пробовал выполнять команду npm build, билдится всё ок, npm start не работает, т.к. порт занят (другими словами эта команда уже была запущена). Думал проблема решится через pm2, там было 2 процесса и ни один из них не отвечает за nextjs. Консоли, где можно было бы остановить NextJS через ctrl+c нет. Есть ли какая-то возможность остановить/перезапустить проект или открыть консоль и через ctrl+c остановить и потом опять запустить через npm start

По дате
По рейтингу
Аватар пользователя
Просветленный

Как я понимаю npm start запускает его в фоновом режиме, значит его нужно останавливать через отправку сигналов https://nextjs.org/docs/app/building-your-application/deploying#manual-graceful-shutdowns killall -SIGINT *process_pid*. Я не знаю ведет ли nextjs pid-файл, если нет то можно отправлять сигнал не по pid'у а по process title, для этого его нужно задать в приложении через process.title = "myapp" https://nodejs.org/docs/latest/api/process.html#processtitle и убивать соотвественно killall -SIGINT myapp

Аватар пользователя
Мудрец

Кеш очистить может?

Аватар пользователя
Искусственный Интеллект

Например в htop найти нужный процесс и убить
Либо банально попытаться хотя бы загуглить
https://blog.sedicomm.com/2018/01/22/poisk-protsessa-po-imeni-v-linux/

Аватар пользователя

поэтому я всегда покупаю VDS/VPS