Redmine 0.8.1をPhusion Passengerで動かす
はじめに – Phusion Passengerとは
Redmine 0.8.0をインストールの記事を書いた直後に0.8.1がリリースされていたので、アップデートがてらPhusion Passengerを使ってApacheでRemineを動かしてみたいと思います。Phusion Passengerとは、別名mod_railsとも呼ばれるApacheモジュールとして実装されたRailsの実行環境で、インストールや設定が簡単なのが特徴です。
Phusion Passengerのインストール
まずは passenger をビルドするために Apache の apxs などをインストールしておきます。例によって環境は Ubuntu 8.10 です。
$ su - # aptitude install apache2-dev ruby1.8-dev # export APXS2=/usr/bin/apxs2
終わったらpassengerのインストールです。といっても以下のコマンドを実行するだけですが。
# gem install passenger # passenger-install-apache2-module
インストールが完了すると下記のように Apache の httpd.conf に書き込む設定内容が表示されるので、これを /etc/apache2/sites-available/default にコピペします。
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/ext/apache2/mod_passenger.so PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6 RailsRuby /usr/bin/ruby1.8
あとは DocumentRoot を Redmine のインストールディレクトリ下の public に設定します。
Redmineが/var/www/redmineにインストールされている場合は
DocumentRoot /var/www/redmine/public
と設定します。なお、DocumentRoot を /var/www に設定しておき、http://localhost/redmine/ のように Redmine をサブディレクトリとして扱いたい場合は以下のようにRedmine のインストールディレクトリにシンボリックリンクを張ります。
# ln -s $REDMINE_ROOT/public /var/www/redmineそして Apache の設定ファイルに
RailsBaseURI /redmine
を追加します。これで /redmine/ のURLでアクセスできるようになります。
というわけで設定が終わったら Apache を起動してみましょう。
# /etc/init.d/apache2 restart今回は http://ホスト名/redmine/ でアクセスしてみます。どうでしょう?RedmineのTOPページが表示されたでしょうか?404や403エラーになる場合、Apacheのエラーログが /var/log/apache2/error.log にあるので、これを見てみると原因が分かるかもしれません。
Passengerの詳細な設定項目についてはPhusion Passenger users guideに詳しく書いてあるので一読してみると良いと思います。
こちらもあわせてどうぞ
- Apacheでリバースプロキシ(mod_proxy)を活用する(2) – 設定編
- Redmine 0.8.0をインストール
- PHPでFatal error: Allowed memory size of …が出た場合の対処方法

redmineをサブディレクトリとして扱うというやり方が、なかなか発見できず。。。
あの英語文書(Phusion Passenger)を少しでも見ておけばよかったんですね。。。
楽しようとすると、逆に時間がかかってしまう。
とにかく、お礼を言いたかったんで。
助かりました。。。ありがとうございました。
@だいさん
こちらこそわざわざコメントありがとうございます。
passengerの本家のドキュメントはしっかり網羅されてますよね。
自分も改めてみたら色々知らないことがたくさんありました。