Linux Mintでapache2のバーチャルホストでruby on railsを動かす
Ubuntuの方も変わらないと思うので参考にどうぞ
rubyのバージョンはrbenvで管理しているものを対象に書いていきます。
普通にpassengerとかを入れて実行すると、
can not load -- bundlerとエラーが出て詰んでました。。。
- rbenvのインストール
apt-getでいけるようですがうまく行かなかったのでcloneしました。
$ cd $ rvm implove $ git clone git://github.com/sstephenson/rbenv.git .rbenv $ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/dotfiles/.zshrc $ echo 'eval "$(rbenv init -)"' >> ~/dotfiles/.zshrc
- ruby-buildのインストール
$ git clone git://github.com/sstephenson/ruby-build.git $ cd ruby-build $ sudo ./install.sh
- rubyのインストール
$ rbenv install 1.9.3-p194 $ rbenv rehash $ rbenv global 1.9.3-p194 $ exec $SHELL $ zsh $ ruby -v
- .gemrcの作成
$ cd $ vi .gemrc 内容 install: --no-ri --no-rdoc update: --no-ri --no-rdoc
- Ruby on Ralisのインストール
$ gem install rails
railsの動作確認は省略します。下の参考サイトで紹介されていますの参照して下さい。
- passengerとapache2のインストール
$ gem install passenger $ .rbenv/versions/1.9.3-p194/bin/passenger-install-apache2-module Installation instructions for required softwareで、 必要なソフトウェアとインストール方法を教えてくれるのでインストールします。 例)$ sudo apt-get install libcurl4-openssl-dev $ .rbenv/versions/1.9.3-p194/bin/passenger-install-apache2-module
成功したら
LoadModule passenger_module /home/ユーザ名/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/passenger-3.0.15/ext/apache2/mod_passenger.so PassengerRoot /home/ユーザ名/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/passenger-3.0.15 PassengerRuby /home/ユーザ名/.rbenv/versions/1.9.3-p194/bin/ruby
と似た表示がされている部分と
<VirtualHost *:80> ServerName www.yourhost.com DocumentRoot /somewhere/public <Directory /somewhere/public> AllowOverride all Options -MultiViews </Directory> </VirtualHost>
と表示されている部分をメモします。
- apacheの設定
$ sudo a2enmod rewrite $ sudo vi /etc/apache2/mods-available/passenger.load
内容は先程コピーした
LoadModule passenger_module /home/ユーザ名/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/passenger-3.0.15/ext/apache2/mod_passenger.so PassengerRoot /home/ユーザ名/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/passenger-3.0.15 PassengerRuby /home/ユーザ名/.rbenv/versions/1.9.3-p194/bin/ruby
をペーストして保存
$ sudo a2enmod passenger $ sudo vi /etc/apache2/sites-available/rails
内容は先程コピーした
<VirtualHost *:80> ServerName www.yourhost.com #サーバ名 DocumentRoot /somewhere/public #railsプロジェクトのpublicへのパス <Directory /somewhere/public> #railsプロジェクトのpublicへのパス AllowOverride all Options -MultiViews </Directory> </VirtualHost>
をペーストして編集、保存
$ sudo a2ensite rails $ sudo vi /etc/ 127.0.0.1 www.yourhost.com #サーバ名 を追記 $ sudo /etc/init.d/apache2 restart
これでいけるはず!http://www.yourhost.com(自分のサーバ名) にアクセスしてみて下さい。
- 参考サイト
http://www.oiax.jp/rails/zakkan/rails_3_2_installation_on_ubuntu.html
http://yasu1973fc2.blog99.fc2.com/blog-entry-34.html