未初始化的常量 OpenSSL (NameError)
Posted
技术标签:
【中文标题】未初始化的常量 OpenSSL (NameError)【英文标题】:uninitialized constant OpenSSL (NameError) 【发布时间】:2013-06-03 12:46:16 【问题描述】:我一直在开发一个使用 OpenSSL 解密数据文件的应用程序,但这在部署到我们的阶段服务器时不起作用。是否需要一些配置步骤来包含我在服务器上错过的 OpenSSL?我没有做任何特别的事情来使它在本地工作(在 Windows 上开发)。
导致错误的行是:
rescue_from OpenSSL::Cipher::CipherError, :with => :cipher_error
在我的一个控制器中。
Ruby 1.8.7,Rails 3.0.4 没有使用 gem 来添加 OpenSSL 支持,它只是在本地工作。
文件的实际解密工作正常(代码在/lib
的模块中),只是控制器中的这一行失败了。
【问题讨论】:
【参考方案1】:您可以尝试明确要求 openssl
require 'openssl'
你安装了 ruby 1.8.7 和 rvm 吗?
如果是这样,您可能想看看这个链接:http://jronallo.github.io/blog/ruby-and-rails-using-rvm-on-a-fresh-and-updated-ubuntu-11-dot-10-install
可能相关的 SO 问题:Rails 3 - no such file to load -- openssl
【讨论】:
以上是关于未初始化的常量 OpenSSL (NameError)的主要内容,如果未能解决你的问题,请参考以下文章