Railsアプリケーションを、Apacheで動かす方法を記載する。 passengerは、RailsアプリとApacheをつなぐ、アプリケーションサーバの役割をするもの。
Rails関係のインストール方法は、以前の『Mac(Lion)にRuby on Railsをインストールする方法(http://www.moritaro.com/archives/1311)』を参照。
1.passangerインストール
gem install passenger
2.Apacheモジュールのビルドとインストール
sudo passenger-install-apache2-module
以下のように、対話形式のインストールが始まる。 [Enter]押下で開始。
もし、「command not found」が出たら、PATHが通ってないので通す。
find / -name passenger-install-apache2-module
でモジュールの場所をみつける。
/Users/testuser/.rbenv/versions/2.0.0-p195/bin/passenger-install-apache2-module /Users/testuser/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/passenger-4.0.24/bin/passenger-install-apache2-module
↑のように、モジュールの場所が分かったら、PATHを通す。
PATH=$PATH:/Users/testuser/.rbenv/versions/2.0.0-p195/bin/ export PATH
再度コマンド実行。
sudo passenger-install-apache2-module
まだ、以下のようなエラーが出る場合、「Mavericks」へのアップグレードが原因
・コマンドラインツール(developper tools)を再インストール
xcode-select --install
・再度コマンド実行で、インストール完了。
sudo passenger-install-apache2-module
3.Apache設定ファイルの設定 「2.」でインストールが成功すると、以下のような設定案内が出るのでコピーして、httpd.confに貼り付ける。
・モジュール読み込み
LoadModule passenger_module /Users/testuser/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/passenger-4.0.24/buildout/apache2/mod_passenger.so PassengerRoot /Users/testuser/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/passenger-4.0.24 PassengerDefaultRuby /Users/testuser/.rbenv/versions/2.0.0-p195/bin/ruby
・VirtualHost設定 任意の領域に、VirtualHost領域を設定。 以下は、サンプルそのままだが、これだと「/somewhere」にインストールしたRailsアプリがApache上で動く。
<VirtualHost *:80> ServerName www.yourhost.com # !!! Be sure to point DocumentRoot to 'public'! DocumentRoot /somewhere/public <Directory /somewhere/public> # This relaxes Apache security settings. AllowOverride all # MultiViews must be turned off. Options -MultiViews </Directory> </VirtualHost>
4.Apache再起動で完了