x**3な人生

基本的にはメモ

passengerを使ってrailsと既存のものを共存させたときのメモ

苦労したのでメモを残す。多分ほとんどの人には価値のないメモ。

やりたいこと

環境

  • ubuntu12.10

手順

  • node_jsはインストールしておく。

sudo apt-get install node_js

  • passengerをインストールする。

sudo gem install passenger

  • passengerのapache2モジュールをインストールする。

sudo passenger-install-apache2-module
足りないものがあると指摘されるので、対応する。

  • passengerのapache2モジュールのインストールに成功するとApache2の設定ファイルに書くことを指示されるので従う(※一部鵜呑みにしてはいけない。virtualhostを書き換える必要は無い)。
    • まず変数を設定する(/etc/apache2/envvarsに以下を追加する)

export RAILS_NAME=/rails
export RAILS_ROOT={railsアプリの場所}/public

    • /etc/apache2/mods-available/passenger.confの編集

以下、書く内容(rubyのバージョンで1.8とか1.9.1はかわる) ここから
PassengerRoot /var/lib/gems/1.9.1/gems/passenger-3.0.18
PassengerRuby /usr/bin/ruby1.9.1
RailsBaseURI ${RAILS_NAME}
RailsEnv development

PassengerAppRoot ${RAILS_NAME}

ここまで

    • /etc/apache2/mods-available/passenger.loadの編集

以下、書く内容(rubyのバージョンで1.8とか1.9.1はかわる) ここから
LoadModule passenger_module /var/lib/gems/1.9.1/gems/passenger-3.0.18/ext/apache2/mod_passenger.so
ここまで

  • railsアプリの作成

rails new {アプリ名}

  • bundle(必要ないかも)

cd {アプリ名}
bundle install

  • もしかしたらGemFileに以下の追記が必要

gem 'execjs'

  • passengerの有効化、apache2の再起動

sudo a2enmod passenger
sudo service apache2 restart

  • 確認

http://{アドレス}/rails
にアクセスしてWelcomのページが表示されればOK。

以上