由于 Rails 应用程序默认在 3000 端口上运行,是否可以在 80 端口上启动应用程序?前面真的需要启用 fastcgi/mod_proxy 的 Web 服务器吗?我的用户一次不会超过三个。如果是这样,我怎么能这样做?
谢谢!
由于 Rails 应用程序默认在 3000 端口上运行,是否可以在 80 端口上启动应用程序?前面真的需要启用 fastcgi/mod_proxy 的 Web 服务器吗?我的用户一次不会超过三个。如果是这样,我怎么能这样做?
谢谢!
警告:这不是关于如何设置 Ruby on Rails 生产环境的通用描述。如果你想托管一个公共 Rails 网站,我强烈建议使用 Apache 和Passenger,它非常易于安装和维护。
根据您的描述,听起来您正在使用某种内部应用程序,以便在您的办公室或类似机构中使用。对于这个特定目的,通过 Webrick(Rails 中的内置 Web 服务器)托管应用程序可能是一个足够的解决方案。为此,请使用-p
命令行参数启动服务器:ruby script/server -p 80
这显然需要端口 80 可用(不受其他 Web 服务器绑定)。此外,在大多数操作系统上,您需要 root 权限才能绑定到端口 80。以 root 身份运行网站的安全隐患非常严重,因此您真的只想在知道自己在做什么的情况下这样做,并且绝对确保服务器与 Internet 完全隔离。
如果没有特定原因您尝试使用 mongrel 运行,我建议使用Phusion Passenger,因为它比 mod_proxy+mongrel 更容易配置和支持。