Apache-SSLの制御ファイルを設定 HTTPD Installation
Last modified : 2000/03/24

SSLを使用する場合は、/usr/local/www/conf/httpd.conf を編集して下さい。mod_sslを組み込んだ場合は、
SSLに必要な設定項目が追加されています。下記では「仮想ホスト(Virtual Host)」機能を使い、1つの
httpd.confで、「SSL化したHTTPサービス」と「通常のHTTPサービス」を実現する方法について説明します。

2001/07/03 Apache1.3.20 + PHP3.0.18 + OpenSSL0.9.6 + mod-SSL2.8.4 で動作確認


まずは、通信に使用するポート番号の設定です。通常のHTTPでは80番を使うが、SSL化されたHTTP(HTTPS)では
443番を使用します。つまり80番にアクセスがあった場合は、通常の通信を行い、443番にアクセスがあった場合には
mod_sslがクライアントとやり取りをして通信を暗号化する。

httpd.conf へ↓行を追加します。
<IfDefine SSL> ← もしSSLが有効な場合、2つのポートを有効にする
Listen 80
Listen 443
</IfDefine>

次に仮想ホストの設定を行います。
<IfDefine SSL>
<VirtualHost 192.168.100.42:443>
DocumentRoot "/usr/local/www/htdocs_secure" ← 通常のHTTPサービスとは別のものを指定した方がよい
ServerName event.xxx.co.jp
ServerAdmin supp-evt@xxx.co.jp
ErrorLog /usr/local/www/logs/error_log
TransferLog /usr/local/www/logs/access_log

SSLEngine on ← SSLを有効にする

SSLCertificateFile /usr/local/www/certs/server.crt ← サーバ証明書
SSLCertificateKeyFile /usr/local/www/certs/server.key ← サーバ秘密鍵

<Files ~ "\.(cgi|shtml)$">
    SSLOptions +StdEnvVars
</Files>
<Directory "/usr/local/www/cgi-bin">
    SSLOptions +StdEnvVars
</Directory>

SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown

CustomLog /usr/local/www/logs/ssl_request_log \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

</VirtualHost>
</IfDefine>

後は、環境に合わせて適宜てきぎ書き換えて下さい。