読者です 読者をやめる 読者になる 読者になる

かけるヒトからできるヒト

プログラムを書ける人からプログラムが出来る人へなるために個人的にまとめるブログ

railsのプロジェクトにpluginを入れる

programming rails

説明ページを参照しながらプラグインを入れようと思ってコマンドを打ち込んだらエラーが出たので備忘録

プラグインを入れたいrailsのディレクトリに移動してコマンドを打ち込む

ruby script/plugin install ~プラグイン~  ruby: No such file or directory -- script/plugin (LoadError)

そんな命令ねーよ!って言われた

 

正しくは以下のように打ち込むらしい

rails plugin install ~プラグイン~

全部これに変換したら入れる事ができる

 

 

追記

twitterでbundleを使う方が一般的だよと教えてもらったので追記

アプリケーションのルートディレクトリ=一番上のディレクトリにあるGemfileというファイルに

gem ~プラグイン~

という風に書いておく

その後

bundle install

というコマンドを打ち込めば同様にプラグインがインストールできる

 

railsのpath設定エラー

programming rails

railsの練習してたらエラーでつまったので初心者の備忘録

http://dotinstall.com/lessons/basic_rails/6540

 

エラー

Showing ~ファイルパス~/app/views/posts/show.html.erb where line #19 raised:
undefined method `post_comments_path' for #<#<Class:0x007f986b1eeaf0>:0x007f986bdb22d8>
===略===
19: <%= form_for([@post, @comment]) do |f| %>  

 

f:id:koh110:20130709232037p:plain

 

19行目あたりにエラーがあるよと言われていたので、そのあたりをずっと見てたけど解決しなかった

原因

~_pathが未定義=通り道ができてないよ!

つまり/config/routs.rbの中でタイポしてただけでした

resources :posts do
    resources :coments
end
=>
resources :posts do
    resources :comments
end

 

railsでjQueryのliveメソッドからajax使うとエラーが出る

rails jQuery

dotインストールを使ってrailsの勉強をしていたらハマったので記録

http://dotinstall.com/lessons/basic_rails/6535

 

railsには最初からjqueryが入ってるのでajaxが簡単に使えるんですねやったー

と意気揚々とソースコード丸写ししてたらchromeさんがエラーをはいてた

f:id:koh110:20130706130258p:plain 

Uncaught TypeError: Object [object Object] has no method 'live' posts:46 (anonymous function) posts:46 fire jquery.js:3075 self.fireWith jquery.js:3187 jQuery.extend.ready jquery.js:434 completed jquery.js:105 

解決

該当箇所はここでした。jQueryのliveメソッドを使っているのがいけないらしい

$('a[data-method="delete"]').live('ajax:success', function(e, data, status,xhr){ $('#post_'+data.post.id).fadeOut("slow"); });
->
$('a[data-method="delete"]').on('ajax:success', function(e, data, status,xhr){ $('#post_'+data.post.id).fadeOut("slow"); });

結論

jQuery 1.9以降のバージョンではliveというメソッドがなくなっているので使ってはいけないとの事

railsjquery-railsというものでjQueryのバージョンを指定しているらしい。

railsのバージョンによってはデフォルトで1.9より後になるので、注意が必要。

一応jQueryのバージョンもjquery-railsで設定可能らしい。

apacheでruby on railsを動かしてみる

apache rails

前回:「apacheが起動してるはずなのにlocalhostにアクセス出来なくなる」、設定をしようとしてapacheすら壊してしまっていたので、こんどこそapacherailsを動かすことに挑戦する。

apache上で動かすことができれば、いちいちサーバを起動せずに、phpのようにプログラムを転送するだけで、サーバ上で公開する事ができるのだ!

環境

http://demo.localhostにアクセスした時にrailsのアプリケーションが動作するように設定する。

mac osx lion

ruby 1.9.3p327

rails 3.2.13

アプリケーションの作成

早速railsのアプリケーションを作成してみる。

今回はapache上で動かす事にするので、「/User/ユーザ名/Sites/」の下にrailstestというディレクトリを作って、その中で動かしてみることにする。

ディレクトリ移動

$ cd /User/ユーザ名/Sites/railstest/

demoという名前でアプリケーション作成。

今回はデータベースにmysqlを使ってみようと思い、その設定を追加して作成。

$ rails new demo -d mysql

すると、「/User/ユーザ名/Sites/railstest」の直下に、demoというディレクトリができる。

そこに移動してrailsのサーバを起動してみたらエラーが出た。

$ cd demo
$ sudo rails s (もしくは$ rails server) => Booting WEBrick => Rails 3.2.13 application starting in development on http://0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server Exiting /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `connect': Unknown database 'demo_development' (Mysql2::Error) from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `initialize' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/mysql2_adapter.rb:16:in `new' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/mysql2_adapter.rb:16:in `mysql2_connection' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:315:in `new_connection' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:325:in `checkout_new_connection' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:247:in `block (2 levels) in checkout' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `loop' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `block in checkout' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:239:in `checkout' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:102:in `block in connection' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:101:in `connection' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:410:in `retrieve_connection' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_specification.rb:171:in `retrieve_connection' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_specification.rb:145:in `connection' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/railtie.rb:88:in `block in ' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `instance_exec' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `run' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:55:in `block in run_initializers' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `each' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `run_initializers' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/application.rb:136:in `initialize!' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/railtie/configurable.rb:30:in `method_missing' from /Users/ユーザ名/Sites/railstest/demo/config/environment.rb:5:in `' from /Users/ユーザ名/Sites/railstest/demo/config.ru:3:in `require' from /Users/ユーザ名/Sites/railstest/demo/config.ru:3:in `block in
' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/builder.rb:51:in `instance_eval' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/builder.rb:51:in `initialize' from /Users/ユーザ名/Sites/railstest/demo/config.ru:in `new' from /Users/ユーザ名/Sites/railstest/demo/config.ru:in `
' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/builder.rb:40:in `eval' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/builder.rb:40:in `parse_file' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:200:in `app' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/commands/server.rb:46:in `app' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:304:in `wrapped_app' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:254:in `start' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/commands/server.rb:70:in `start' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/commands.rb:55:in `block in ' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/commands.rb:50:in `tap' from /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/commands.rb:50:in `' from script/rails:6:in `require' from script/rails:6:in `
'

エラーを読んでみるとunknown databaseちうことで、そんなデータベースないよ!って言われてるようだ。

なので、mysqlでそのデータベースを作ってやる。

$ mysql -uroot -phogehoge 
create database demo_development;

こんどこそ起動に成功

$ sudo rails s
=> Booting WEBrick
=> Rails 3.2.13 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2013-06-27 21:02:58] INFO  WEBrick 1.3.1
[2013-06-27 21:02:58] INFO  ruby 1.9.3 (2012-11-10) [x86_64-darwin12.4.0] 

ここで、「http://localhost:3000」にアクセスすると

f:id:koh110:20130627211920p:plain

こんなページが表示される。

これでrailsの起動は確認できた。

 

apache上で動かす

いよいよapache上で動かす。

railsのpassengerというものをインストールして、virtualhostを設定する。

virtualhostについては別記事で。

passengerをインストールして、apacheのモジュールをインストールする

$ gem install passenger
$ passenger-install-apache2-module

すると、親切な事にpassengerの設定の仕方がコンソールに表示される

#passenger-install-apache2-module --snippet↲
  3 LoadModule passenger_module /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1    .9.1/gems/passenger-4.0.5/libout/apache2/mod_passenger.so↲
  4    PassengerRoot /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/p    assenger-4.0.5↲
  5    PassengerDefaultRuby /Users/ユーザ名/.rbenv/versions/1.9.3-p327/bin/ruby↲
--------------------------------------------
Deploying a Ruby on Rails application: an example

Suppose you have a Ruby on Rails application in /somewhere. Add a virtual host
to your Apache configuration file, and set its DocumentRoot to
/somewhere/public, like this:
<virtualhost :80>
      ServerName www.yourhost.com
      DocumentRoot /somewhere/public
</virtualhost>

これを自分の設定にそろえてhttpd.confのなかに書き込む

なんとなく僕は今回保守性を考えてhttpd.confのなかに

Include /private/etc/apache2/other/*.conf

を追加して「/private/etc/apache2/other/passenger.conf」を作り、設定を全部そこにぶちこんだ。

今回はdemo.localhostというドメインで運用しようと思うので、passenge.confの中身は以下のようになる。

#passenger-install-apache2-module --snippet
LoadModule passenger_module /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1    .9.1/gems/passenger-4.0.5/libout/apache2/mod_passenger.so
PassengerRoot /Users/ユーザ名/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/p    assenger-4.0.5
PassengerDefaultRuby /Users/ユーザ名/.rbenv/versions/1.9.3-p327/bin/ruby

<VirtualHost *:80> ServerName demo.localhost # !!! Be sure to point DocumentRoot to 'public'! DocumentRoot "/Users/ユーザ名/Sites/railstest/demo/public" RailsEnv development <Directory "/Users/ユーザ名/Sites/railstest/demo/public"> # This relaxes Apache security settings. AllowOverride all # MultiViews must be turned off. Options -MultiViews </Directory> </VirtualHost>

httpd.confをいじり終わったらapacheを再起動して設定を読みこませる

sudo apachectl restart

ここでhotsファイルに「127.0.0.1 demo.localhost」を追加して、「http://demo.localhost」にアクセスすると、サーバを起動してないのに、さっきと同じページにアクセスできた。

f:id:koh110:20130627211925p:plain

 

なぜか最初全然アクセスできなかったけど、railsではドキュメントルートは「アプリケーション名/public」というpublicと名前のついたフォルダにアクセスさせなければならないという事にひっかかっていた。

ディレクトリ等を指定する時は最後にpublicを忘れないよう注意

 

まとめ

apacherailsを動かすための設定をした

Virtualhostの設定

server apache

apacheの設定を色々としなければならない事になって、設定をしたのでまとめ。

 

Virtual hostとは

同じコンピュータ(ipアドレス)にアクセスしてきたアドレス(ドメイン名)を判断して、違うディレクトリに振り分ける技術だそうだ。

例えば、自宅サーバでhogehoge.comとfugafuga.comというドメインをとっていたとする。

適当なサービスでドメインを取ると、hogehoge.comやfugafuga.comにはサーバのグローバルIPが登録されることになる。

このままだと、http://hogehoge.comhttp://fugafuga.comにアクセスした時はどちらもapacheで設定している一番上の階層(Ubuntuのデフォルトだと/var/wwwとか)にアクセスされる。

けどドメインが違うということは別のサービスであるという事が多いと思うので、それぞれ、別のディレクトリにいってほしいわけだ。

その時に使えるのがvirtual hostという事らしい。

つまりhttp://hogehoge.comにアクセスした時は/var/www/hogehogeに飛ばして、http://fugafuga.comにアクセスした時は/var/www/fugafugaに飛ばすというふうに設定できると言うことだ。

 

環境

今回はいちいちドメインをとって実験するのがめんどうだったので、macのapacheを動かして、localhostにsub.localhostというサブドメインをつけてみる。

余談だけども、macでは「/User/ユーザ名/Sites」の下にhtmlを置くと、「http://localhost/~ユーザ名」でそこのhtmlにアクセスできるようになる。

なので、今回はこの「/User/ユーザ名/Sites/sub」というディレクトリを作り、sub.localhostにアクセスした時はここのhtmlにアクセスさせる事にする。

macじゃなくても設定ファイルの位置とかが変わるだけなので、適宜読み替えてください。

mac osx lion

apache 2.2.22

 

使い方

まず、apacheの設定ファイルをいじってやる。

macの場合は「/private/etc/apache2/httpd.conf」が設定ファイルとなる。privateを付けないディレクトリにも同じファイルがあるけど、最近のmacではprivateの下のディレクトリを使うのが一般的らしい。

適当にテキストエディタかなんかで開いて、477行目あたりにあった設定のコメントを外す

# Virtual hosts↲
#Include /private/etc/apache2/extra/httpd-vhosts.conf
->
# Virtual hosts↲
Include /private/etc/apache2/extra/httpd-vhosts.conf

httpd.confに直接書いても設定は反映させられるが、こうすることでhttpd-vhosts.confにかかれたvirtual hostの設定が使えるようになる。

ここにvirtual hostの設定を集めておいた方が、後でどこに設定書いたかわからない等が起きなくなる。なのでここに書いておく事をおすすめする。

 

次に今コメントアウトを外した「/private/etc/apache2/extra/httpd-vhosts.conf」をテキストエディタで開く。

なんか色々書いてあるけど、記入例なので思い切って全部消す。

そして次の設定を書く。

NameVirtualHost *:80
<virtualhost :80>
    ServerName sub.localhost
    DocumentRoot "/Users/ユーザ名/Sites/sub"
    <Directory "/Users/ユーザ名/Sites/sub">
      # This relaxes Apache security settings.
      AllowOverride all
# MultiViews must be turned off. Options -MultiViews </Directory> </virtualhost>

 

アクセス確認

virtual hostの設定をしたけど、hostの設定をしないとlocalhostはドメインをうまく読めないので、設定。

「/private/etc/hosts」を開いて

127.0.0.1 sub.localhost

を追加

まずはhttp://localhostの方に行ってみる。

f:id:koh110:20130627220232p:plain

動いているのを確認。動いていなかったらapacheを起動したりしてみる。

$ apachectl start

 

次にhttp://sub.localhostにアクセス。

htmlファイルはものすごく単純に

<html>
<body>sub</body>
</html>

だけにした。

f:id:koh110:20130627220238p:plain

きちんと表示がされる事を確認した。

 

おわり

Virtual hostを使って、同じサーバでもドメインごとにアクセスするhtmlを変える設定をまとめた。

apacheが起動してるはずなのにlocalhostにアクセス出来なくなる

server apache

前回:「macのruby on railsの環境構築でエラーが出る」でruby on railsの環境を揃えたので、apacheruby on railsを動かしてみるというのに挑戦中。

ruby on railsapacheで動かすためには、passengerというのが必要で、それの設定をしていたらlocalhostに接続できなくなった。

apacheの起動

$ sudo apachectl start

今回の失敗は、これで起動できているものだと思い込んでた事。

これでchromeから「http://localhost」にアクセスすると、

f:id:koh110:20130623230501p:plainlocalhostに接続できませんでした、となる。

 

ここで、

$ httpd -t

としてみるた所、

Syntax error on line 12 of /private/etc/apache2/other/passenger.conf:
RailsBaseURI takes one argument, Deprecated option.

というエラーが出ていた事に気づく。 

railsapacheで動かすために色々いじってたconfの設定が悪さをしていました。

このファイルの12行目を直した所、無事localhostに接続成功。

こんな事で1日をつぶしてしまったよ……

 

次こそはpassengerの設定にたどりつきたい

macのruby on railsの環境構築でエラーが出る

rails

ubunturailsの環境揃えたけど、開発をubuntuでやるのはめんどくさいので、macに環境を揃えてから転送しようとして詰まったので、まとめ。

 

環境

mac os x 10.8.4

homebrewインストール済み

 

手順1:rubyのインストール前準備

macには最初からrubyが入ってるらしいけど、バージョンが古いらしいので、アップデートする。

まずはhomebrewを使ってrbenvとruby-buildなるものをインストール。

これはわざわざインストールやアンインストールでrubyのバージョンを変えなくても、コマンド一発で好きなバージョンにしてくれるというものらしい。ありがたい。

$ brew install rbenv
$ brew install ruby-build 

 そしてパスを通して

$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

 おまじない

$ . ~/.bash_profile

 

手順2:rubyのインストール

さっそくrubyのインストール。

インストールできるrubyのバージョン一覧をずらずらと出す。

$ rbenv install -l

今回は2.0をのぞいた今の所の最新っぽいruby 1.9.3p327 をインストールする。

$ rbenv install 1.9.3-p327 

ruby系のインストールはどれも結構時間がかかって 不安になる。

終わったらコマンドで、このバージョンのrubyをmacで使うrubyにするよ!というコマンドを打つ。

$ rbenv global 1.9.3-p327

 バージョン確認するために「$ ruby -v」をしてみたけど、なぜか反映されてなくて焦ったけど、「$ . ~/.bash_profile 」をしたら直りました。

 

手順3:ruby on railsのインストール

いよいよrailsのインストール。

$ gem install rails

これも時間がかかるけど終了をまって、意気揚々とバージョンの確認をしてみると、以下のエラーに見舞われた。

$ rails -v
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:230:in `activate': can't activate rack (~> 1.4.5, runtime) for ["actionpack-3.2.13", "railties-3.2.13"], already activated rack-1.5.2 for ["rack-ssl-1.3.3", "railties-3.2.13"] (Gem::LoadError)
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:246:in `activate'
	from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:245:in `each'
	from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:245:in `activate'
	from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:246:in `activate'
	from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:245:in `each'
	from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:245:in `activate'
	from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:1056:in `gem'
	from /usr/bin/rails:18

エラー文を見てると、どうも1.8のrubyをよびにいっているように見える。

そして、rack-1.4.5が起動できないよ!rack-1.5.2がすでに動いてるからね!と言われているようなので、rackなるもののバージョンを下げてみる事に。

$ gem uninstall rack -v 1.5.2
Successfully uninstalled rack-1.5.2
$ gem install rack -v 1.4.5
Successfully installed rack-1.4.5

この後も何度かバージョンを確認してもさっきのエラーが出続けていたのだけど、「$ source ~/.bash_profile 」と「$ rbenv rehash」をした後にエラーが消えていたので、インストールを有効に出来ていなかったという事らしい。

とりあえずエラーは出なくなったのでよしとする。

$ rails -v
Rails 3.2.13

長くなったので、アプリケーションの作成とapacheと連携してブラウザで環境の確認は次の記事にする