【问题标题】:SSL Certificate getaddrinfo: Name or service not known (SocketError) Rails-4.2.0SSL证书getaddrinfo:名称或服务未知(SocketError)Rails-4.2.0
【发布时间】:2020-06-17 07:16:01
【问题描述】:

我有带有 ruby​​ 版本 2.2.0 的 Rails 4.2.0 应用程序。我有一个要求,我需要为测试环境创建 SSL 证书。

要设置 SSL 证书,我按照以下步骤操作:

第一步: brew install mkcert

第 2 步:/etc/hosts 上为 localhost 域添加条目,即 127.0.0.1 localhost.application_name

第 3 步:为我由mkcert localhost.application_name 创建的域创建密钥和证书文件

第 4 步:然后将这些证书文件移动到 config\ssl 文件夹中

step-5:然后我像bundle exec rails server -p 3000 -b 'ssl://127.0.0.1:3000?key=config/ssl/localhost.application_name-key.pem&cert=config/ssl/localhost.application_name.pem'一样启动我的rails服务器

当我使用以下命令运行 rails 时,我遇到了错误'getaddrinfo': getaddrinfo: Name or service not known (SocketError)

为了更清楚,我附上了rails执行后的截图。

我已经尝试了很多已经存在于 StackOverflow 中的解决方案,但到目前为止还没有运气。任何帮助将不胜感激!

注意:我使用 Docker 设置了 Rails 应用程序

【问题讨论】:

    标签: ruby-on-rails ruby ssl ruby-on-rails-4 ssl-certificate


    【解决方案1】:

    您提供的绑定语法(使用ssl:// 方案)与puma 应用程序服务器一起使用。

    WEBrick,它是 Rails 4.x 的默认应用程序服务器,不支持这种绑定方案。

    所以您只需添加到Gemfile 即可跳转到puma

    gem 'puma'
    

    然后运行

    bundle install
    

    然后你就可以像以前一样启动你的应用了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-20
      • 2012-11-02
      • 2015-04-30
      • 1970-01-01
      • 1970-01-01
      • 2016-11-11
      • 2014-06-28
      • 1970-01-01
      相关资源
      最近更新 更多