如何将Rails应用程序部署到Dreamhost?

Rol*_*der 6 deployment ruby-on-rails dreamhost

我有点迷茫,我尝试在共享的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显示.通过纠正这些错误,我得到了应用程序的工作.

Dan*_*uis 8

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

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

更优选的选项是将应用程序设置为在Phusion Passenger(aka mod_rails)上运行.通过Dreamhost面板应该非常简单,只需要让域使用mod_rails,然后将域的目录设置为应用程序的公共目录.有关详细信息,请参阅Passenger wiki页面.