我有一个脚本,可以在启动时为我的 rails 应用程序启动乘客独立服务器。当我从命令行运行此脚本时,它按预期工作。但是,当它运行时,rc.local
它crontab
会产生此错误。我在任何日志文件中都找不到任何关于我一生的记录。这是怎么回事,我该如何解决?
一些规格:
Digital Ocean Droplet
Ubuntu 15.10:32bit
Passenger 版本:5.0.27
Rails 版本:4.2.6
Ruby 版本:2.3.0
这又是一个独立的服务器,没有反向代理。我正在使用 iptables 将端口 80 重定向到乘客所在的端口(高于 3000)。
任何帮助将不胜感激!
我想出了这一点,我将把这个问题留给其他有同样问题的人回答。
什么地方出了错
当我打开数字海洋控制台以便看到启动时,我看到它正在运行我的
bootUp.sh
脚本并试图将pid
文件存储在//passenger.PORT.pid
两个斜杠中。我认为这很奇怪......作为一个新手,我不知道其中的脚本/path/to/my/script.sh
不会在它所在的目录中执行。所以当我从根目录运行脚本时,它产生了类似的错误。我是如何解决的
结果我所要做的就是在脚本中
cd /path/to/script/dir
的命令上方添加一行。passenger start
上面提到的cd
只是把脚本的工作目录放在它应该在的地方,因为它默认在其他地方。我希望这可以帮助其他不是这种事情专家的人,因为我花了很长时间才弄清楚这个简单的错误