CentOs 6.5 с использованием учетной записи root, у меня есть работающее приложение Node.js Express:
root@vps [/home/test/node]# npm start app.js
> [email protected] start /home/test/node
> node ./bin/www app.js
Приложение можно увидеть работающим в интернет-браузере. Я останавливаю приложение и пытаюсь запустить его навсегда:
root@vps [/home/test/node]# forever start app.js
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info: Forever processing file: app.js
root@vps [/home/test/node]#
Выдает пару предупреждений, которые не должны быть проблемой, и похоже, что он должен работать, но не отображается в браузере, вечный список:
root@vps [/home/test/node]# forever list
info: Forever processes running
data: uid command script forever pid id logfile uptime
data: [0] OkGm /usr/local/bin/node app.js 32222 32227 /root/.forever/OkGm.log STOPPED
root@vps [/home/test/node]#
Если я проверю OkGm.log:
error: Forever detected script exited with code: 0
Почему приложение не работает, когда я запускаю его навсегда?
error: Forever detected script exited with code: 0
в ваших логах. Скорее всего ошибкаEACCES
или что-то подобное. - person t.niese   schedule 26.03.2015try
-catch
, либо блокомon('error', ...)
, не обрабатывая его таким образом, чтобы оно информировало вас о том, что экспресс-сервер (?) будет запущен. Или вы делаете проверку, если вы можете запустить его, который не удается, и вы не запускаете его из-за этого. Неважно, в чем причина, только вы можете узнать, почему. Я бы предложил добавить регистрацию в вашем приложении. Чтобы вы могли определить, какие шаги выполняются, а какие нет. - person t.niese   schedule 26.03.2015