ウェブサーバのエラーログは見られないという状況下で、Rubyモジュールがそのサーバにインストールされているかどうかを簡単に判別する方法はありませんか。
はずしていたらすみません。
そのサーバにloginしてシェルから
ruby -e "require 'hoge'"
って実行すれば?hogeモジュールがあればエラーは出ませんが、なければ
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__': no such file to load -- hoge (LoadError) from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require' from -e:1
みたいなエラーが出ます。
require 失敗時には LoadError 例外が上がるので、以下のような CGI を設置して叩けば調べられます。
#!/usr/bin/ruby puts 'Content-Type: text/plain' puts '' begin require 'hoge' puts 'hoge is installed' rescue LoadError puts 'hoge not found' end
なるほど、ありがとうございます。
後ほど試してみます。
あー、すんません。条件を1つ書き忘れていました。
シェルは使えないんです。
もしアイデアお持ちでしたらご回答お願いします。