ruby-on-rails – 在Ubuntu 11.04上设置Passenger Phusion

我对任何曾经说过“在轨道应用程序上部署ruby的东西都很容易”的人感到愤怒.不,这不对.这是我必须做的最困难的事情,我开发操作系统.

呼.现在那就出来了.我终于安装了乘客(使用低音安装过程),安装人员说:

请编辑您的apache配置文件并添加以下行:

LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.2-p290@rails-3.0.1/gems/passenger-3.0.8/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.2-p290@rails-3.0.1/gems/passenger-3.0.8
PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.2-p290@rails-3.0.1/ruby

假设你/某处有一个Rails应用程序.添加虚拟主机到您的
Apache配置文件并将其DocumentRoot设置为/ somewhere / public:

   <VirtualHost *:80>
      ServerName www.yourhost.com
      DocumentRoot /somewhere/public    # <-- be sure to point to 'public'!
      <Directory /somewhere/public>
         AllowOverride all              # <-- relax Apache security settings
         Options -MultiViews            # <-- MultiViews must be turned off
      </Directory>
   </VirtualHost>

我将这两个放在/etc/apache2/apache2.conf中,当我尝试启动apache时,它说错误就是我把这个垃圾放到了哪一行.非常感谢帮助.我快到了,我能感受到它!

缺口

最佳答案 成功安装Apache 2模块后,请按照下一组步骤配置Apache.

>在/ etc / apache2 / mods-available中创建以下两个文件

mkdir /etc/apache2/mods-available/passenger.load

在passenger.load文件中粘贴以下代码

LoadModule passenger_module /usr/lib/ruby/gems/1.9.2(your version)/gems
/passenger-3.0.2/ext/apache2/mod_passenger.so

mkdir /etc/apache2/mods-available/passenger.conf

在passenger.conf文件中粘贴以下代码

PassengerRoot /usr/lib/ruby/gems/1.9.2/gems/passenger-3.0.2
PassengerRuby /usr/bin/ruby1.9.2

2.通过在/ etc / apache2 / mods-enabled中创建以下符号链接来启用模块

$ln -s /etc/apache2/mods-available/passenger.load /etc/apache2/mods-enabled/passenger.load
$ln -s /etc/apache2/mods-available/passenger.conf /etc/apache2/mods-enabled/passenger.conf

3.现在通过将以下内容添加到/ etc / apache2 / sites-enabled中的000-default文件来创建虚拟主机.

<Directory /var/www/your_app>
         RailsBaseURI /your_app
         RailsEnv development
         AllowOverride all
         Options -MultiViews
         allow from all
</Directory>

>现在创建应用程序的软链接,确保您的应用程序必须位于/ opt中,您可以为应用程序创建单独的文件夹.

一世. $sudo mkdir -p / opt / rails_apps

II. $sudo cp -R / path / to / your_app / / opt / rails_apps /

III. $sudo ln -s / opt / rails_apps / your_app / public / / var / www / your_app
>然后使用以下命令重新启动apache.

/etc/init.d/apache2 restart

点赞