Вот несколько вещей, которые вы можете сделать, если локально запущенный порт веб-сервера используется, а ваш сервер не запускается.
Эта проблема встала передо мной во время третьей фазы Flatiron School: Четыре недели изучения Ruby, SQL, Active Record и Sinatra.
Живая или горячая перезагрузка всех возможных вещей делает меня счастливым, поэтому я был рад внедрить rerun на своем сервере сразу после того, как узнал о нем.
Это очень весело — не перезагружать локальный сервер вручную при каждом изменении в программе, за исключением одной очень редкой проблемы, с которой я столкнулся. Это происходило, когда я выходил из окна VS Code (настроенного на автосохранение приложения при выходе), что вызывало повторное обновление в браузере.
Я часто Command + R
мою веб-страницу в любом случае, чтобы перезапустить мой путь пользователя, и при правильном выборе времени я получал ошибку типа port is in use
.
Моей первой остановкой в Google была эта страница Stack Overflow, которая дала мне решение в два шага: Проверьте, не прослушивают ли какие-либо процессы порт, на котором находится мой сервер:
lsof -i:9292
(ruby действительно прослушивал этот порт, что означало, что он блокировал перезапуск моего сервера на этом порту), а затем запустить:
kill $(lsof -t -i:9292)
чтобы очистить путь для перезапуска сервера.
Вскоре после того, как я сам столкнулся с этим, та же проблема возникла в классе, и было показано другое решение:
npx kill-port 9292