当前位置:  开发笔记 > 后端 > 正文

使用Apache和Mongrel部署Ruby on Rails

如何解决《使用Apache和Mongrel部署RubyonRails》经验,为你挑选了1个好方法。

我对rails和web开发上的ruby相当新.以下是我在此链接中的设置http://tonyrose023.blogspot.com/2007/01/multiple-rails-apps-with-mongrel.html 我在Apache2上使用Mongrel群集运行多个rails应用程序.

http://services.abc.edu/app1 http://services.abc.edu/app2 http://services.abc.edu/app3

这就是我的'虚拟主机'(/etc/apache2/sites-availabe/services.abc.edu)文件的样子

--------------
 
BalancerMember http://services.abc.edu:8000 
BalancerMember http://services.abc.edu:8001 
BalancerMember http://services.abc.edu:8002
Order deny,allow
Deny from all
Allow from all



BalancerMember http://services.abc.edu:8004
BalancerMember http://services.abc.edu:8005
Order deny,allow
Deny from all
Allow from all



BalancerMember http://services.abc.edu:8006
BalancerMember http://services.abc.edu:8007
Order deny,allow
Deny from all
Allow from all





    ServerName services.abc.edu
    DocumentRoot /home/joe/projects/app1/public


 
Options FollowSymLinks 
AllowOverride None 
Order allow,deny 
Allow from all 
 

 
Options FollowSymLinks 
AllowOverride None 
Order allow,deny 
Allow from all 
 


Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all


RewriteEngine On 


# Rewrite index to check for static 
#RewriteRule ^/$ /index.html [QSA] 
# Rewrite to check for Rails cached page 
RewriteRule ^([^.]+)$ $1.html [QSA] 
# Redirect all non-static requests to cluster 
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f 
#RewriteRule ^/(.*)$ balancer://mongrel_cluster%{REQUEST_URI} [P,QSA,L] 

RewriteRule ^/app1(.*)$ balancer://app1%{REQUEST_URI} [P,QSA,L]
RewriteRule ^/app2(.*)$ balancer://app2%{REQUEST_URI} [P,QSA,L]
RewriteRule ^/app3(.*)$ balancer://app3%{REQUEST_URI} [P,QSA,L]


-----------------------------------------

我的问题是

1)如果有人可以评论我的设置并提供任何建议将是伟大的.

2)正如你所看到我有一个DocumentRoot,虽然现在所有3个应用程序都可以工作,因为他们使用相同的图像,但我认为将来我需要为每个应用程序安装DocumentRoot

3)我需要让应用程序安全运行所以我需要使用SSL(端口443)进行运行,我需要一些帮助才能使用SSL运行.任何指针都会有所帮助,因为我从未安装过证书.我创建了csr和密钥,我有证书.我正在研究接下来的步骤.

谢谢!



1> Aram Versteg..:

我建议你调查乘客.设置起来非常简单,让Rails应用程序共享内存,消除管理一组mongrel的负担,几乎不需要配置.您只需要一个特殊的'config.ru'文件,其中包含RackUp配置和指向Apache中RAILS_ROOT/public set的DocumentRoot.

在mongrel中运行多个应用程序的问题是,每个应用程序都需要一个单独的mongrel实例.

至于您的SSL问题,我发现在Nginx中为我的网站的某些部分设置SSL非常容易.我不记得如何在Apache中做到这一点,但最有可能是一些好的howtos.

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有