我正在嘗試爲我的瘦服務器Web應用啓用SSL,以便它可以通過HTTPS工作。爲瘦服務器和Sinatra啓用SSL
我也做了以下內容: -
瘦Web服務器 MyApp.run的啓動! :host =>'127.0.0.1',:port => 9090,:sslenable => true,:sslverifyclient => OpenSSL :: SSL :: VERIFY_NONE, :sslcertificate =>'.ssl/server_key.pem',::sslprivatekey =>'.ssl/key.pem'
我在Ruby中使用openssl模塊生成一個自簽名證書和私鑰,創建一個名爲.ssl的目錄並將它們作爲pem文件存儲在那裏。
我用於web應用程序的web框架是Sinatra。我還使用機架SSL寶石以下列方式..
myapp.rb
require 'rack/ssl'
class MyApp < Sinatra ::Base
use Rack::SSL
use Rack::Session::Cookie,
:key => '_rack_session',
:path => '/',
:expire_after => 2592000,
:secret => ''
...
end
當我去http://localhost:9090,我希望看到我的應用程序顯示爲正常,但用掛鎖並通過它,因爲任何http請求被重定向到https,我看到錯誤「網頁不可用」。但是,當我刪除ssl-rack紅寶石寶石,並重新啓動我的應用程序,並去https://localhost:9090,i獲得ssl連接錯誤,並提供以下詳細信息:
無法與服務器建立安全連接。這可能是服務器的問題,或者它可能需要您沒有的客戶端身份驗證證書。 錯誤代碼:ERR_SSL_PROTOCOL_ERROR
任何人都可以請告訴我如何最好地配置瘦服務器來啓用SSL?
您是否看到http://stackoverflow.com/q/11405161/335847? – iain 2015-02-10 17:21:48
更新 - 嗨,我已經實現了這個解決方案,它的工作原理(ISH),但仍試圖讓它與cert_chain_file(自簽名證書)和private_key_file(私鑰)的路徑工作。 – user4219550 2015-02-11 09:01:25