あーかいぶすハイディフィニション

ここはもう更新しとらんのじゃ

ApacheとSSL

新しい案件のリリースがあったんですが(じつはリアルタイムで進行中)、SSL導入でもめたのでメモ。

Apache2のSSLは、mod_sslhttpd.confで呼ばれていれば利用可能。ディストリ付属のApacheだったりすると、httpd.confとかに記述ルールが掲載されています。
まあ、大体はssl.confとか、類似する名前の.confファイルがあると思うので、コピーしてもいいし新規に作成してもいいので、中に下記のような記述をします。

<VirtualHost *:443>
  SSLEngine on
  SSLCertificateFile /home/USER/ssl/website.crt
  SSLCertificateKeyFile /home/USER/ssl/website.key
</VirtualHost>

最低限これだけあれば動きます(まじで最低限だよ)。
あとはmod_rewriteで、特定のディレクトリだけhttpsに振り分けるとかすればおk。もしくはもうプログラム側でhttpsへのルールを書くとかそんなん。
けどこんな事しなくても、frontにpoundおけば解決なんですよね。そもそも、apachesslとか、VirtualHostで複数運営している所はポート分けないと複数設置できないし。

で、なんでこんな事言ってるかというと、上記のサービスリリースで、なぜかうちの社長が
「Passengerで個別にサービス動かせるんだからSSLも対応できるだろjk」といった感じで、ネームベースでのVirtualHostは無理だとあれほど言って(略)。

※その後、不定期にssl部だけボカーンと落ちる現象が多発中。なぜか様子を見よう!と言い出す社長とふざけんじゃねえ!とブチ切れるPM。そして客に怒られるPM。がんばれPM、まけるなPM!社長がlighttpdの設定よく分からないとか言わなくなるその日まで!