【发布时间】:2015-06-23 22:49:18
【问题描述】:
我正在尝试在 windows box 的开发环境中在 puma 上运行我的 rails 应用程序。如果没有 ssl,应用程序可以正常工作..
但是当我尝试为 puma 配置 ssl 时,没有任何反应。日志中没有生成错误,并且网页 (https://localhost:3000/) 显示安全连接失败。下面是命令行的输出,显示服务器已启动,但之后没有发生任何事情..
E:\ap01\dev\rmmi>foreman start -p 3000
17:19:31 web.1 | started with pid 3016
17:19:34 web.1 | *** SIGUSR2 not implemented, signal based restart unavailable!
17:19:34 web.1 | *** SIGUSR1 not implemented, signal based restart unavailable!
17:19:34 web.1 | *** SIGHUP not implemented, signal based logs reopening unavailable!
17:19:34 web.1 | Puma starting in single mode...
17:19:34 web.1 | * Version 2.11.2 (ruby 2.0.0-p353), codename: Intrepid Squirrel
17:19:34 web.1 | * Min threads: 5, max threads: 5
17:19:34 web.1 | * Environment: development
17:19:36 web.1 | * Listening on tcp://0.0.0.0:3000
17:19:36 web.1 | * Listening on ssl://127.0.0.1:3000?cert=E:/ap01/OpenSSL-Win32/bin/server.crt&key=E:/ap01/OpenSSL-Win32/bin/server.key
17:19:36 web.1 | Use Ctrl-C to stop
我的 config/puma.rb 文件如下 -
path_to_key="E:/ap01/OpenSSL-Win32/bin/server.key"
path_to_cert="E:/ap01/OpenSSL-Win32/bin/server.crt"
threads_count = Integer(ENV['MAX_THREADS'] || 5)
threads threads_count, threads_count
preload_app!
rackup DefaultRackup
port ENV['PORT'] || 3000
environment ENV['RACK_ENV'] || 'development'
ssl_bind '127.0.0.1', '3000', { key: path_to_key, cert: path_to_cert }
on_worker_boot do
ActiveSupport.on_load(:active_record) do
config = ActiveRecord::Base.configurations[Rails.env] ||
Rails.application.config.database_configuration[Rails.env]
config['pool'] = ENV['MAX_THREADS'] || 5
ActiveRecord::Base.establish_connection(config)
end
end
工头简介如下-
web: bundle exec puma -p $PORT -C config/puma.rb
我还在我的应用程序 config/application.rb 文件中设置了 config.force_ssl = true。
您能否告知我在这里遗漏了什么或做错了什么?任何指针将不胜感激
提前致谢!
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-4 ssl puma