PassengerでRails3を起動する。
環境は、先日に引き続きCentOS5.5。
まずはgemでpassengerのインストーラを取得。
インストーラ実行。
opensslが見つからん、とか何とか。
openssl-develをyumしてruby用のライブラリをビルド。
再度、passengerインストーラ実行。
成功。
次にapacheの設定をする。
もしインストールされていないならば、yumっておく。
設定は、passengerのインストール中に指示が出るので、それに従えばよい。
apacheコンフィグファイルにて、モジュールを追加。
/etc/httpd/conf/httpd.conf
次に、バーチャルホストの設定。
Railsアプリは、/somewhere/以下に配置する。
/etc/httpd/conf/httpd.conf
ドキュメントルートが、Railsアプリのpublicディレクトリを指していればOK。
/somewhere以下は、オーナーをroot以外にしておく。
apacheを再起動する。
ブラウザから、
http://www.yourhost.com
にアクセスするとRailsアプリが表示される。
Railsアプリを再起動する場合は、tmp/restart.txtを更新すればよい。
次にhttpからアクセスがあった際に再起動される。
以上。
これで、特定のディレクトリにRailsアプリを置くだけで動作するようになった。
複数のRailsアプリを一台のサーバーで運用することもできる。
phpのような手軽さだ。
環境は、先日に引き続きCentOS5.5。
まずはgemでpassengerのインストーラを取得。
gem i passenger
インストーラ実行。
passenger-install-apache2-module
opensslが見つからん、とか何とか。
openssl-develをyumしてruby用のライブラリをビルド。
yum install openssl-devel
cd /usr/local/src/ruby-1.9.2-p0/lib/ext/openssl/
ruby extconf.rb
make
make install
再度、passengerインストーラ実行。
passetnger-install-apache2-module
成功。
次にapacheの設定をする。
もしインストールされていないならば、yumっておく。
yum install httpd
設定は、passengerのインストール中に指示が出るので、それに従えばよい。
apacheコンフィグファイルにて、モジュールを追加。
/etc/httpd/conf/httpd.conf
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.15/ext/apache2/mod_passenger.soLoadModuleはこの辺りに書け、というセクションがあるので、その末尾にでも書いておく。
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-2.2.15
PassengerRuby /usr/local/bin/ruby
次に、バーチャルホストの設定。
Railsアプリは、/somewhere/以下に配置する。
/etc/httpd/conf/httpd.conf
<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>
ドキュメントルートが、Railsアプリのpublicディレクトリを指していればOK。
/somewhere以下は、オーナーをroot以外にしておく。
apacheを再起動する。
/etc/init.d/httpd restart
ブラウザから、
http://www.yourhost.com
にアクセスするとRailsアプリが表示される。
Railsアプリを再起動する場合は、tmp/restart.txtを更新すればよい。
touch /somewhere/tmp/restart.txt
次にhttpからアクセスがあった際に再起動される。
以上。
これで、特定のディレクトリにRailsアプリを置くだけで動作するようになった。
複数のRailsアプリを一台のサーバーで運用することもできる。
phpのような手軽さだ。
コメントする