【问题标题】:How to deploy a Rails app to Dreamhost?如何将 Rails 应用程序部署到 Dreamhost?
【发布时间】:2023-03-16 13:49:01
【问题描述】:

我有点迷茫,我尝试将我的应用程序部署在共享的 Dreamhost 服务器上。 现在一切正常。这是我在 Rails 的第一次尝试,我不是真正的程序员或系统管理员,只是一起破解一些东西。

在 Dreamhost 上,如果我启动 webrick,它在 3000 端口上运行良好,但 webricks 很快就会被杀死,我想这是有道理的。

那么我必须做些什么才能让它运行呢?

我启用了 fastcgi 支持和 mod_rails。

现在,如何让应用持续运行?

我一直在阅读有关必须对 .htaccess 和 dispatch.fcgi 执行操作的文章。

但我在我的 rails 应用 (2.3.2) 中找不到任何调度文件。

我必须手动创建一个吗?对我来说并没有真正的感觉。我并没有真正弄清楚这个调度文件的作用,以及为什么需要它。

任何帮助将不胜感激。

我查看了 DH Wiki,但无法弄清楚 (http://wiki.dreamhost.com/Rails)

添加

我启用了 mod_rails 并指向公共目录(我已经这样做了)。 我不断收到错误消息:screencast.com/t/KamqVawk

嗯,服务器日志看起来实际上没有请求,所以这可能是dreamhosts端的问题。奇怪的是,当我尝试访问该页面时,我看到 access.log 显示了新的更改日期,但没有记录请求,error.log 也是空的。

Dreamhost 支持回答

服务器是最新的,所以这不是问题。 他们提议冻结宝石,我照做了(见:http://wiki.dreamhost.com/Freezing_Gems) 但这没有帮助。 我想我要放弃了,正在寻找专门用于 Rails 的托管。

感谢您的帮助!

更改为 hostingrails.com

我让应用程序在 hostingrails.com 上运行,hostingrails.com 上的乘客向我显示了错误,dreamhost 或 mongrel 没有显示这些错误。通过更正这些错误,我让应用程序正常运行。

【问题讨论】:

    标签: ruby-on-rails deployment dreamhost


    【解决方案1】:

    如果您使用共享主机,Dreamhost 将不允许您使用 webrick。您可以使用 FastCGI 或Passenger 在共享DH 上托管Rails(如果您升级到DreamhostPS,可以选择mongrel,但这显然更贵)。

    对于 FastCGI,您需要一个 dispatch.fcgi 文件(旧版本的 Rails 会在您创建新的 Rails 应用程序时生成一个,但如果我没记错的话,它会在 2.2 左右停止)以及.htaccess 中的代码以向调度程序发送请求。有关设置 FastCGI 的详细信息,请参阅 Dreamhost Ruby on Rails wiki 页面。

    更可取的选择是将应用程序设置为在 Phusion Passenger(又名 mod_rails)上运行。通过 Dreamhost 面板应该很简单,您只需启用域以使用 mod_rails,然后将域的目录设置为应用程序的公共目录。有关详细信息,请参阅Passenger wiki 页面。

    【讨论】:

    • 嗯,这就是我实际所做的。我启用了 mod_rails 并指向公共目录。我不断收到错误screencast.com/t/KamqVawk
    • 当您尝试访问您的网站时,哪些内容会添加到您的日志文件中?
    • 正如您在我对问题的编辑中看到的那样,实际上没有任何记录。
    • 您的帐户可能尚未设置 mod_rails。我会联系 DH 支持,因为据我所知(您可以添加域编辑页面的屏幕截图吗?),您已正确完成所有操作。
    • 我会这样做的。非常感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-26
    • 2023-04-07
    • 2016-03-18
    • 2011-06-07
    • 2018-03-31
    • 1970-01-01
    • 2011-06-28
    相关资源
    最近更新 更多