Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IIS上的Ruby-on-Rails?_Ruby On Rails_Iis_Iis 7_Windows Server 2008 - Fatal编程技术网

IIS上的Ruby-on-Rails?

IIS上的Ruby-on-Rails?,ruby-on-rails,iis,iis-7,windows-server-2008,Ruby On Rails,Iis,Iis 7,Windows Server 2008,我正在编写一个RubyonRails应用程序,它通常运行在Heroku或Linux机器上,但我还需要将其部署到Windows服务器上 该服务器是一个安装了IIS 7.0的64位Win2008服务器,因此通常我更喜欢使用IIS,而不是在它旁边设置Apache 我只是不知道Ruby/Rails是否能与IIS一起工作?宝石有用吗?64位是一个问题吗 我正在考虑使用Ruby 1.9.1和Rails 2.3。您一定喜欢痛苦,因为这种部署会带来伤害。我不知道这是否适合您,但在我以前的工作中,我们在windo

我正在编写一个RubyonRails应用程序,它通常运行在Heroku或Linux机器上,但我还需要将其部署到Windows服务器上

该服务器是一个安装了IIS 7.0的64位Win2008服务器,因此通常我更喜欢使用IIS,而不是在它旁边设置Apache

我只是不知道Ruby/Rails是否能与IIS一起工作?宝石有用吗?64位是一个问题吗


我正在考虑使用Ruby 1.9.1和Rails 2.3。

您一定喜欢痛苦,因为这种部署会带来伤害。我不知道这是否适合您,但在我以前的工作中,我们在windows平板电脑上部署web应用程序(超过200个),并决定使用virtual box并在vm中部署该应用程序。我们在pc平板电脑上部署的一个旧应用程序没有iis,只使用ruby和rubygems,mongrel作为应用服务器,mysql作为数据库,但这并不令人愉快。

你可以在iis下部署Rails,这非常困难,也没有太多文档。您需要一个特殊的快速CGI实现:

其他信息请点击此处:


Windows上Apache下的Rails稍微容易一些,但Windows部署的最大缺点是无法使用Capistrano自动化部署。宝石在Windows上工作。我所有的经验都是32位的,可能有64位相关的小故障,但我对此表示怀疑。

要安装Ruby on Rails for IIS 7 64位Windows 2008服务器,请使用微软的Web平台安装程序,这一切都非常简单!有关详细信息,请参阅。

有关在windows中使用RoR的工作,我将执行以下操作:

1. Install Ruby and RoR
2. Install NginX (balancing for each thin server launched)
3. Install Thin Server
4. Create a service (on Ruby code) that run each thin server process with each affinity process (cpu0/cpu1...) for example if have a DualCore CPU it will launch 2 Thin Server (different port between those) and set affinity for each one (using PID).
5. Set a windows user with permission to do run that service (like a IIS pool and isolated process concept)

我的应用程序连续工作了一年多,没有任何问题,我很高兴。

有一种方法可以通过HttpPlatformHandler在IIS8上运行RoR——Scott Hanselman在他的帖子中描述了这一点:

这实际上是一个有趣的想法:安装Hyper-V服务器并在其中运行一些Linux。我会记住这一点的。(注:我是一名SharePoint开发人员,所以我不只是喜欢痛苦,我正在积极寻找痛苦…)让我知道,如果你想走这条路,我或我的老老板可能会给你一些建议。我认为我们在使用已编译版本的virtual box时遇到了一些许可证问题,因此我们必须从源代码处编译它,这不是一个简单的过程(我认为他们试图保持这种方式)。这有一个缺点:如果您已经安装并微调了Ruby的副本,它不会建议您使用它,但会安装另一个,而且,它将把新的Ruby放到PATH中,这将打破以前的安装。还有一件事:Helicon Zoo可以安装RoR,但无法卸载它-您必须手动执行此操作。是的,特别是对于SQL Server,您需要特定的旧版本Ruby,否则它将无法编译。。。