【问题标题】:Start Rails server with an absolute path使用绝对路径启动 Rails 服务器
【发布时间】:2025-12-24 02:40:07
【问题描述】:

我正在尝试编写一个脚本来运行我的 Rails 开发服务器,但绝对路径不起作用。

这就是我所拥有的;

/home/me/dev/app/script/rails server >> /var/log/rails.output.log

它只是抛出一个错误说,

“未找到配置 /home/me/config.ru”

Rails 似乎正在使用当前工作目录来获取其路径,而不是脚本位置。

有没有办法强制应用路径?

【问题讨论】:

    标签: ruby-on-rails ruby absolute-path


    【解决方案1】:

    试试:

    cd /home/me/dev/app && script/rails server >> /var/log/rails.output.log

    【讨论】:

    • 实际上工作得很好。我曾想过,但没有尝试,因为出于某种原因,我预计 cd 会持续存在并搞砸其他事情,但显然它只更改了其余命令序列的目录。
    【解决方案2】:

    作为替代方案:

    ruby /home/me/dev/app/script/rails s -c /home/me/dev/app/config.ru -P /home/me/dev/app/tmp/pids/server.pid > > /var/log/rails.output.log

    【讨论】:

    • 试过了,效果很好,但是 cd 更简单。出于某种原因,我希望 cd 能够持续存在,但我想我错了。
    • @Stephen Belanger,我同意@Aaron Hinni(对他+1)解决方案更好,所以它只是替代方案:)
    【解决方案3】:

    我想也许rails server 有一个选项可以传递给它,以更改路径,但look like 不是这样。

    您可以传递-c 标志并指定您自己的配置,也许这​​与它有关?

    【讨论】: