2

私はthin、認証用のDeviseとDoorkeeperとともに、サーバーとして使用するRails3プロジェクトを開発しました。

プロジェクトにSSL証明書を追加したいのですが。Rails 3プロジェクトでSSL証明書を使用する方法を説明する投稿を見たことがありますが、Rails3プロジェクトで証明書を追加する方法を示すものはありません。

を有効config.force_ssl = trueにしてapplicationcontroller.rb、次のようなシンサーバーを起動してみました。

thin start --ssl

証明書を追加しなくても機能し、次のコマンドでWebサイトにアクセスできるようになりましたhttps://(ブラウザからの証明書の確認されていない警告。これは、証明書がCAによって検証されていないためです)。

最近、Rails3プロジェクトにSSL証明書を追加する方法を示す投稿を見ました。 Rails 3.0の「railsserver」にSSLオプションを渡すにはどうすればよいですか?

:SSLEnable        => true,
:SSLVerifyClient    => OpenSSL::SSL::VERIFY_NONE,
:SSLPrivateKey        => OpenSSL::PKey::RSA.new(File.open(current_dir + "/config/certs/server.key").read),
:SSLCertificate         => OpenSSL::X509::Certificate.new(File.open(current_dir + "/config/certs/server.crt").read),
:SSLCertName    => [ [ "CN", WEBrick::Utils::getservername ] ]

これは証明書を追加する正しい方法ですか?サーバーを起動しようとするたびに、これらのオプションを指定する必要があります。

サーバーを起動するたびに証明書パスを指定する必要がないように、プロジェクト構成に証明書パスを含める(またはプロジェクトに証明書を含める)他の方法はありますか?

どんな助けでもありがたいです....

4

1 に答える 1

4

ここで、SSLをシンに追加することに関する答えを見つけました:

SSL サポートと ruby​​-debug を備えた Thin

nginx に ssl を追加する場合 (本番環境で nginx を使用することをお勧めします)、nginx に証明書を追加する方法について説明します

http://wiki.nginx.org/HttpSslModule

server {
  listen               443;
  ssl                  on;
  ssl_certificate      /path_to_certificate/cert.pem;
  ssl_certificate_key  /path_to_certificate/cert.key;
  keepalive_timeout    70;
}
于 2013-02-04T09:24:07.587 に答える