SSLエラー ssl_error_rx_record_too_long (ERR_SSL_PROTOCOL_ERROR)

SSLの設定完了後、エラー発生。

Firefox

f:id:crosawassant:20140626115301p:plain

安全な接続ができませんでした
www.ezample.jpへの接続中にエラーが発生しました。
SSL received a record that exceeded the maximum permissible length. 

(エラーコード: ssl_error_rx_record_too_long)

Chrome

f:id:crosawassant:20140626115428p:plain

SSL接続エラー
サーバーとの安全な接続を確立できません。サーバー側に問題があるか、サーバーが必要とするクライアント認証証明書を所持していない可能性があります。

エラーコード:ERR_SSL_PROTOCOL_ERROR

apacheのエラーログ
Invalid method in request \x16\x03\x01

原因は<IfDefine SSL>~</IfDefine>

httpd を起動するとき -D でパラメータが指定されていれば、<IfDefine> と </IfDefine> で囲まれたディレクティブを有効にする。

次の例では、httpd 起動時に -D でパラメータ SSL が 指定されていれば、囲まれたディレクティブを有効にする。

<IfDefine SSL>
  ....
</IfDefine>

httpd を起動するためのスクリプト apachectl を見ると、sslstart するときに -D でパラメータ SSL を指定している。

HTTPD='/usr/local/apache2/bin/httpd'

startssl|sslstart|start-SSL)
    $HTTPD -k start -DSSL
    ERROR=$?
    ;;
httpdの設定(ssl.conf)より引用

シラナカッターーーorz

 

 

今回はDオプションをつけて起動しなくてもよいようにしたかったので、<IfDefine SSL>と</IfDefine>はさっくり削除して対応しました。

その他にも、別な原因で同様のエラーが出ることがあるようです。
↓のサイトでまとめてあってとても助かりました。

参考:

SSLでエラー ssl_error_rx_record_too_long (-12263) - くろまほうさいきょうでんせつ