httpsでsinatraアプリを動かす
sudo a2enmod ssl
オレオレ証明書を作る
適当に質問に答える
openssl req -new -nodes -keyout server.key -out server.csr openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 365 sudo cp server.* /etc/apache2/
/etc/apache2/sites-available/default を編集
<VirtualHost *:80> ServerName testapp.example.com DocumentRoot /path/to/sinatra-app/public </VirtualHost> <VirtualHost *:443> ServerName testapp.example.com DocumentRoot /path/to/sinatra-app/public SSLEngine on SSLCertificateFile /etc/apache2/server.crt SSLCertificateKeyFile /etc/apache2/server.key </VirtualHost>
port80と同じアプリをport443でも動かす
もしdefaultじゃなく新しく設定ファイルを増やしたら、a2ensiteを忘れないように
sinatraからはenv['rack.url_scheme']でhttpかhttpsかが判別できる
アプリ側で、ログイン用のURLにhttpで来たらhttpsにredirectするとか、適当にすればいいと思う