HTTPSで参照したときにOpenSSL: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
ネットワークインタフェイスが複数あるウェブサーバがあります。それぞれのインタフェイスが以下のようなアドレスを持っていたとします。
- 172.16.0.1
- 172.16.0.2
でもって /etc/hosts にはひとつ目のアドレスだけが書いてあります。
172.16.0.1 www.example.com
ウェブサーバでは https://www.exapmle.com という仮想ホストが設定してあるときに、別ホストで www.example.com を 172.16.0.2 で名前解決して https でブラウズすると、タイトルのエラーになる。
自分が思っているアドレス(/etc/hostsに書いてあるアドレス:172.16.0.1)と、リクエストされたアドレス(172.16.0.2) が違うのがよくないみたい。
アドレスを 172.16.0.1 にしてリクエストすればいいんですが、そうも行かない場合はサーバ側で対処します。
/etc/host.conf に multi on を追加
multi on
/etc/hosts に 172.16.0.2 を追加
172.16.0.1 www.example.com 172.16.0.2 www.examole.com
/etc/host.conf の存在は今日初めて知りました。