让Rails生产在端口80上运行

时间:2014-12-25 03:50:55

标签: ruby-on-rails apache ubuntu passenger

我正在尝试让我的rails应用程序在生产模式下运行,但我遇到了一些困难。

我正在使用apache的乘客并且正在运行Ubuntu 12.04。我配置并创建了生产数据库,并设置了乘客。状态如下:

$ rvmsudo passenger-status 
Version : 4.0.56
Date    : 2014-12-25 01:54:20 +0000
Instance: 7264
----------- General information -----------
Max pool size : 6
Processes     : 0
Requests in top-level queue : 0

----------- Application groups -----------

但是,当我运行rails server -e production时,它仍会侦听端口3000,如下所示:

$ rails server -e production
=> Booting WEBrick
=> Rails 4.2.0 application starting in production on http://localhost:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2014-12-25 01:54:49] INFO  WEBrick 1.3.1
[2014-12-25 01:54:49] INFO  ruby 2.1.5 (2014-11-13) [i686-linux]
[2014-12-25 01:54:49] INFO  WEBrick::HTTPServer#start: pid=7459 port=3000

让我在生产模式下侦听端口80时可能会缺少什么?

非常感谢提前。

1 个答案:

答案 0 :(得分:1)

我不认为这是使用Apache在生产中启动服务器的方式。你安装了apache-paassenger模块吗?并在apache conf文件中进行了更改?

首先,需要在系统上安装gem:

gem install passenger 

在编译Apache模块之前,还需要安装两个依赖包:

apt-get install curl-devel httpd-devel 

使用此命令启动apache安装:需要一些时间

passenger-install-apache2-module

乘客将在Apache安装后显示一些内容:

跟进并在(/ etc / httpd / conf / httpd.conf)中进行更改

您必须指向应用程序公用文件夹并重新启动Apache服务器,然后紧跟这些来源。

https://www.digitalocean.com/community/tutorials/how-to-install-rails-apache-and-mysql-on-ubuntu-with-passenger

https://www.digitalocean.com/community/tutorials/how-to-setup-a-rails-4-app-with-apache-and-passenger-on-centos-6

我第一次这样做时有所帮助。