LINUX.ORG.RU

Не стартует localhost(rails)

 , , ,


1

1

Привет.

Сервак стартует, url, которую генерит сервак не работает

rails server webrick -p 3049

Как быть и что делать?

Спасибо за ваше время

ЗЫ. виртуалка, ubuntu 16.04
rails 5



Последнее исправление: ChuCha (всего исправлений: 3)

Что значит «URL нет»? Опция -p принимает только номер порта, на котором нужно слушать подключения. И это, тебе необязательно указывать в команде webrick, достаточно просто rails s -p 3049.

spijet ★★★
()
Ответ на: комментарий от spijet

Попытка соединения не удалась

Firefox не может установить соединение с сервером localhost:3049.

Возможно, сайт временно недоступен или перегружен запросами. Подождите некоторое время и попробуйте снова.

Если вы не можете загрузить ни одну страницу – проверьте настройки соединения с Интернетом.

Если ваш компьютер или сеть защищены межсетевым экраном или прокси-сервером – убедитесь, что Firefox разрешён выход в Интернет.

Сам сервак никакую ошибку не пишет.

ChuCha
() автор топика
Последнее исправление: ChuCha (всего исправлений: 1)
Ответ на: комментарий от ChuCha

Зайди в соседний терминал и сделай netstat -tulpen | grep 3049. Если netstat в системе нет — используй вместо него ss.

spijet ★★★
()
Ответ на: комментарий от ChuCha

Значит, у тебя WEBrick не забиндился на порт (или уже завершился). Можешь скриншот терминала с ним куда-нибудь залить?

spijet ★★★
()
Ответ на: комментарий от ChuCha

A server is already running. Check /home/yura/ROR/work/gosound/tmp/pids/server.pid.

Ничего у тебя не запускается. Сервер видит циферки в PID-файле, думает что всё уже запущено и останавливается. Сделай echo "" > /home/yura/ROR/work/gosound/tmp/pids/server.pid, чтобы удалить из него всё, либо удали сам файл, если не поможет, потом пробуй ещё раз. И это, читай вывод сервера внимательней, это очень полезно.

spijet ★★★
()
Ответ на: комментарий от spijet

Спасибо тебе большое, все стартонуло.
Пожалуйста, если тебе не трудно, объясни в чем дело и почему твоя команда помогла?

Спасибо.

ChuCha
() автор топика
Ответ на: комментарий от ChuCha

Всё очень просто. У тебя, по видимому, где-то в конфигах сервера внутри проекта указано хранить PID Rails-сервера в файле tmp/pids/server.pid. При старте сервер:

  • Проверяет, существует ли этот файл;
  • Создаёт его, если он отсутствует;
  • Пишет в него свой PID-файл.

Однако, если при старте сервер видит, что в PID-файле уже есть какой-то номер процесса, он понимает, что сервер уже запущен и завершается с соответствующей ошибкой:

A server is already running. Check /home/yura/ROR/work/gosound/tmp/pids/server.pid.

Как правило, тебе не надо держать более одного экземпляра сервера одного проекта одновременно. Но, почему-то, сервер только проверяет наличие PID внутри файла и не проверяет, есть ли процесс с таким PID в системе. Соответственно, для того, чтобы исправить положение, надо почистить PID-файл.

Если хочется, можно попробовать написать к приложению initalizer, который будет проверять наличие PID-файла и наличие в системе процесса с PID из этого файла, если, конечно, рантайм такое позволит делать.

spijet ★★★
()
Ответ на: комментарий от ChuCha

Пожалуйста. Не ленись читать всё то, что тебе говорит рубёвый рантайм.

spijet ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.