16

我有一台具有以下配置的专用服务器

i3-双核-3.06Ghz H/T16GB内存500GB SATA2

现在我想在一个专用服务器上执行两个不同的Rails应用程序。这两个应用程序不同,但它们使用的是通用数据库。

有可能这样做吗?如果是,我该怎么做?Apache的Phusion Passenger是一个好方法吗?如果是-我如何用一个Phusion Passenger服务器配置两个应用程序?

3个答案

重置为默认值
14

我将描述如何使用Apache、Phusion Passenger和一些版本的Ruby在一个Linux服务器上运行多个Rails应用程序。你有很多选择,但这应该有助于你开始。其中许多细节来自安装脚本

首先,安装Phusion Passenger。

>gem安装乘客

其次,构建Apache 2 Passenger模块。您应该能够执行在步骤1中安装的以下脚本。

>乘客安装包2模块

此脚本将编译Apache 2模块并解释如何配置Apache。如果缺少依赖项,脚本应该提供一些关于如何安装它们的有用建议。

第三,编辑Apache配置文件。我必须添加这样的内容。(只需将其用于引用,不用担心.rvm)步骤2中运行的脚本将为您提供一些可以复制和粘贴的内容。

加载模块passenger_module/Users/me/.rvm/gems/ree/gems/passenger-3.0.9/ext/apache2/mod_passenger.so乘客根/用户/me/.rvm/gems/ree/gems/passenger-3.0.9乘客ruby/Users/me/.rvm/wrappers/ree/ruby

第四,在Apache配置文件中添加如下内容对于每个应用程序你想跑步。

<虚拟主机*:80>服务器名称app1.example.comDocumentRoot/shome/app1/public#<--确保指向“public”!<目录/某处/app1/public>AllowOverride all#<--relax Apache安全设置选项-多视图#<--必须关闭多视图</目录></虚拟主机>

如果有两个Rails应用程序共享一个数据库,那么它们在config/database.yml中都会有类似的连接信息

1
  • 1
    我可以加载不同版本的乘客模块同时使用Apache2?因为我有两个不同ruby版本(和gemset)的rails应用程序?
    – 李忠琛
    评论 2013年3月26日19:04
1

是的,这绝对是可能的。我从来没有用过Passenger+Apache,但我相信这是一种好方法。我只使用过thin+nginx。

1
  • 1
    能告诉我更多细节吗?有链接吗?或任何我可以开始思考或部署应用程序的事情。
    – AMIC明
    评论 2011年9月20日19:02
0

使用Apache进行乘客Phusion是一种可靠的方法。事实上,他们使用的是同一个数据库,这不应该成为问题(只要确保他们不会以任何方式相互干涉即可)。

一般来说,只需正常设置,但请看一看基于Apache名称的虚拟主机:

http://httpd.apache.org/docs/2.2/vhosts/name-based.html

你的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.