在没有Lighttpd / Apache的情况下提供Web应用程序

时间:2010-04-25 19:43:00

标签: ruby-on-rails ruby networking mongrel

由于Rails应用程序默认在端口3000上运行,是否可以在端口80上启动应用程序?是否真的需要在前面启用fastcgi / mod_proxy的Web服务器?我的用户一次不会超过三个。如果是这样,我怎么能这样做?

谢谢!

3 个答案:

答案 0 :(得分:2)

  

警告:这是有关如何设置Ruby on Rails生产环境的一般用途说明。如果您想托管公共Rails网站,我强烈建议您使用Apache Passenger,这非常容易安装和维护。

根据您的描述,听起来您正在使用某种内部应用程序在办公室或类似地方使用。出于这个特殊目的,通过Webrick(Rails中的内置Web服务器)托管应用程序可能是一个充分的解决方案。为此,请使用-p命令行参数启动服务器:ruby script/server -p 80

这显然要求端口80可用(不受某些其他Web服务器的约束)。此外,在大多数操作系统上,您将需要root权限才能绑定到端口80.以root身份运行网站的安全隐患是严重的,所以如果您知道自己在做什么,那么您真的只想这样做,绝对是确保服务器完全屏蔽了互联网。

答案 1 :(得分:2)

如果没有某些特定原因你试图使用mongrel运行,我建议使用Phusion Passenger,因为它比mod_proxy + mongrel更容易配置和支持。

答案 2 :(得分:0)