RubyデバッガーとSSLをThinで同時に実行する方法を知っている人はいますか?
私はRails 3.0.10でThinをうまく使っています。
を使用して開始しrails server --debugger
、コードをデバッグできます。
最近、アプリケーションに SSL サポートを追加する必要があり、自己署名証明書を使用してローカルでテストできるようにしたいと考えています。
残念ながら、使用時に SSL サポートを使用して Thin を開始する方法が見つかりませんでしたrails server
。
以下を使用して、SSL サポートを使用して Thin を正常に開始できます。
thin start --ssl --ssl-verify --ssl-key-file ssllocal/server.key
--ssl-cert-file ssllocal/server.crt
ただし、を使用してデバッガーをアクティブにする方法が見つかりませんでしたthin start
。
rails server
したがって、デバッガー ( ) または SSL ( )を実行する選択肢があるようですが、thin start
両方を実行することはできません。
rails server
rails/script ファイルを変更することで、Webrick で SSL を実行できるようになるようです (こちらを参照)。私はこのアプローチを試しましたが、成功していません。これが試みの1つです:
#!/usr/bin/env ruby
# This command will automatically be run when you run "rails" with Rails 3
# gems installed from the root of your application.
APP_PATH = File.expand_path('../../config/application', __FILE__)
require File.expand_path('../../config/boot', __FILE__)
# THIS IS NEW:
require "rails/commands/server"
require 'rack'
require 'thin'
module Rails
class Server
def default_options
super.merge({
:Port => 3000,
:environment => (ENV['RAILS_ENV'] || "development").dup,
:daemonize => false,
:debugger => false,
:pid => File.expand_path("tmp/pids/server.pid"),
:config => File.expand_path("config.ru"),
:SSLEnable => true
:ssl => true,
"ssl-verify" => true,
"ssl-key-file" => File.expand_path("ssllocal/server.key"),
"ssl-cert-file" => File.expand_path("ssllocal/server.crt")
})
end
end
end
require 'rails/commands'
注: 疑問に思われる方のために説明すると、ルート アプリケーション ディレクトリから 'ssllocal' ディレクトリを作成しました。そこに ssl キーと証明書を保存します。