Rails3をApache上で運用する

専用のポートを開けるのではなく、既存の Apache 上で Rails3 アプリを動作させる方法です。

環境

Passengerモジュール

Passengerモジュールのインストール

Apache 上で Rails3 アプリを動かすには、Passenger モジュールを Apache に組み込む必要があります。

gem で Passenger のパッケージを入手して下さい。

$ gem i passenger

続いてインストールを行ないます。

# passenger-install-apache2-module

途中いろいろ必要なパッケージを入れろと警告が出るかと思います。インストール方法まで丁寧に示してくれるので、それに従い対応します。

Apache の設定

続いて、Apache の設定を行ないます。 /etc/apache2/mods-available に移動して、rails.conf、rails.load というファイルを生成して下さい。"rails" の部分は任意の名称で良いです。

rails.load

LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.8/ext/apache2/mod_passenger.so

rails.conf

PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.8
PassengerRuby /usr/local/bin/ruby

最後に、公開したい Rails アプリの場所を設定します。Rails アプリを動かしたいバーチャルホストに以下の設定をします。

<VirtualHost *:80>
    ...(略)...
    RailsBaseURI /prof/RailsAppName/public
</VirtualHost>

RailsAppName という Rails アプリを自動生成したさいに、public ディレクトリも生成されています。RailsBaseURI には、public ディレクトリを指定します。URI は、このバーチャルホストの DocumentRoot からの、相対パスになります。

動作確認

ブラウザから、http://ホスト名/prof/RailsAppName/ で Rails アプリにアクセス出来ます。public は URL に含める必要はありません。


履歴


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS