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

How to deploy a Rails app to 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也为空。

screenshot of configuration

Dreamhost支持答案:

服务器是最新的,所以这不是问题。
他们提议冻结我做过的ruby(请参阅:http://wiki.dreamhost.com/Freezing_Gems)
但这没有帮助。
我想我正在放弃,并正在研究专门用于Rails的托管。

谢谢您的帮助!

已更改为hostingrails.com

我在hostingrails.com上运行了该应用程序,hostingrails.com上的乘客向我显示了错误,dreamhost或mongrel并未显示该错误。通过更正这些错误,我使该应用程序正常工作。


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

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

更可取的选择是将您的应用程序设置为在Phusion Passenger(aka mod_rails)上运行。通过Dreamhost面板,这应该非常简单,只需启用域即可使用mod_rails,然后将域的目录设置为应用程序的公共目录。有关更多详细信息,请参见"乘客Wiki"页面。