Ruby on rails Phusion乘客-安装后我实际要做什么?

Ruby on rails Phusion乘客-安装后我实际要做什么?,ruby-on-rails,ubuntu,passenger,Ruby On Rails,Ubuntu,Passenger,我在linode上使用Ubuntu10.04,并且安装了apache2和Rails 3.2.2。我的应用程序在example.com:3000上运行良好 我已按照说明在此处安装Phusion Passen: http://www.modrails.com/install.html 在这里: http://wiki.brightbox.co.uk/docs:rvm 但我不知道如何在example.com上以生产模式运行我的应用程序。我键入什么命令来执行此操作?我是做“rails服务器”还是“r

我在linode上使用Ubuntu10.04,并且安装了apache2和Rails 3.2.2。我的应用程序在example.com:3000上运行良好

我已按照说明在此处安装Phusion Passen:

http://www.modrails.com/install.html
在这里:

http://wiki.brightbox.co.uk/docs:rvm
但我不知道如何在example.com上以生产模式运行我的应用程序。我键入什么命令来执行此操作?我是做“rails服务器”还是“rails服务器-p80”?我使用的命令是什么

编辑1:

我的Virtualhost文件位于

<VirtualHost *:80>
 ServerAdmin webmaster@example.com
 ServerName example.com
 ServerAlias www.example.com
 DocumentRoot /srv/www/example.com/public_html/
 ErrorLog /srv/www/example.com/logs/error.log
 CustomLog /srv/www/example.com/logs/access.log combined

 <Directory /srv/www/example.com/public_html/>
    AllowOverride all
    Options -Multiviews
 </Directory>
</VirtualHost>
linode安装指南说明了第一种方法(http://library.linode.com/web-servers/apache/installation/ubuntu-10.04-lucid),但乘客说第二个。只要是一致的,这有关系吗

我的乘客模块位在/etc/apache2/mods中如下所示:

在password.conf中

PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p125/gems/passenger-3.0.11
PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p125/ruby
载客量

LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p125/gems/passenger-3.0.11/ext/apache2/mod_passenger.so    
编辑2:我现在将乘客模块位添加到apache配置文件中,而不是passenger.conf和passenger.load文件中。为此,我设定了以下条件:

config/environments/production.rb ... config.assets.compile=true …

安装过程(例如,
passenger-install-apache2-module
部分)在最后给出了您需要执行的操作说明

要点是为应用程序创建一个虚拟主机,例如,
/etc/apache2/sites available/myapp
,如下所示:

<VirtualHost *:80>
  ServerName example.com
  ServerAlias *.example.com
  DocumentRoot /path/to/app/public

  PassengerMinInstances 2
  PassengerPoolIdleTime 600
  PassengerUserSwitching on
  PassengerDefaultUser someuser

  RailsBaseURI /

  <Directory "/path/to/app/public">
    FileETag none
    Options All
    AllowOverride None
    Order allow,deny
    Allow from all
  </Directory>
</VirtualHost>
然后,您只需执行通常的apache操作:

sudo a2ensite myapp
sudo /etc/init.d/apache2 reload
假设
example.com
指向这台机器,您就可以开始了。

安装过程(例如
passenger-install-apache2-module
部分)在最后给出了您需要执行的操作说明

要点是为应用程序创建一个虚拟主机,例如,
/etc/apache2/sites available/myapp
,如下所示:

<VirtualHost *:80>
  ServerName example.com
  ServerAlias *.example.com
  DocumentRoot /path/to/app/public

  PassengerMinInstances 2
  PassengerPoolIdleTime 600
  PassengerUserSwitching on
  PassengerDefaultUser someuser

  RailsBaseURI /

  <Directory "/path/to/app/public">
    FileETag none
    Options All
    AllowOverride None
    Order allow,deny
    Allow from all
  </Directory>
</VirtualHost>
然后,您只需执行通常的apache操作:

sudo a2ensite myapp
sudo /etc/init.d/apache2 reload

假设
example.com
指向这台机器,您就可以开始了。

好的,谢谢,看来我已经完成了上述所有操作。我认为virtualhost步骤肯定有问题,因为/public_html和/public之间存在差异。我已更新指向myapp/public文件夹的路径。然而,我在我的主页上只能看到rails附带的默认文件,其中有一条消息说index of/然后是一个404.html 500.html列表等。我如何做最后一步,以确保它取而代之的是我的根页面?您是否删除了
public/index.html
?是的,但我已经在rails应用程序中创建了我的静态页面,设置为根路径。但它似乎没有显示OK,因此我建议您使用我提到的各种配置更新您的问题,以便我们可以解决它们的问题。另外,您是否查看了rails日志以查看其中是否有相关内容?好的,谢谢,看来我已经完成了上述所有操作。我认为virtualhost步骤肯定有问题,因为/public_html和/public之间存在差异。我已更新指向myapp/public文件夹的路径。然而,我在我的主页上只能看到rails附带的默认文件,其中有一条消息说index of/然后是一个404.html 500.html列表等。我如何做最后一步,以确保它取而代之的是我的根页面?您是否删除了
public/index.html
?是的,但我已经在rails应用程序中创建了我的静态页面,设置为根路径。但它似乎没有显示OK,因此我建议您使用我提到的各种配置更新您的问题,以便我们可以解决它们的问题。另外,您是否查看了rails日志,看看其中是否有相关内容?