我们的系统pipe理员需要升级CentOS 5.4 dev服务器上的软件包以匹配我们的生产服务器上的软件包。 升级影响ruby和/或openssl 。
我们运行一个名为Redmine的Ruby on Rails问题跟踪系统,在Apache上使用Passenger进行部署。 在服务器更新之前一切正常,但现在尝试访问故障单系统时,出现以下错误:
Cipher is not a module
TypeError
/home/dev/rails/redmine-0.8.7
我一直在努力解决这个问题,但我似乎无法击败它。
我试过按照这个指南:
http://iamclovin.posterous.com/how-to-solve-the-cipher-is-not-a-module-error
当我尝试在IRB中require 'openssl'
时,我确实看到了一个true
返回值。 但是,我仍然看到Cipher.rb在访问票务系统时不是模块TypeError。
我试过更新Passenger,但是当我尝试passenger-install-apache2-module
我看到:
Checking for required software... * GNU C++ compiler... found at /usr/bin/g++ * Ruby development headers... found * OpenSSL support for Ruby... /usr/lib/ruby/1.8/openssl/cipher.rb:22: Cipher is not a module (TypeError)
cd ext/openssl/ ruby extconf.rb make sudo make install sudo cp -R /usr/local/lib/ruby/site_ruby/1.8/openssl* /usr/lib/ruby/1.8/
find一个修复这个花了很长一段时间…