Ruby on rails Phusion乘客-安装后我实际要做什么?
我在linode上使用Ubuntu10.04,并且安装了apache2和Rails 3.2.2。我的应用程序在example.com:3000上运行良好 我已按照说明在此处安装Phusion Passen: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
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日志,看看其中是否有相关内容?