我已经构建了一个 vagrant/virtualbox Web 服务器作为开发沙箱,并在 VM 中为 ssl 配置了 apache(在默认端口 443 上,带有自签名证书)。我已经使用 curl 测试了虚拟机本身的页面
curl -v -k https://mysite.mydomain.com/testSearch/results?postcode=WN8+0BA
它似乎工作得非常愉快,所以我很满意 apache 已正确配置并在 VM 中工作。
但是,当我尝试通过 https 从主机的浏览器访问 VM 时,我无法这样做。
我已经添加
config.vm.forward_port "https", 443, 8443
到我的 vagrantfile,但试图访问 url
https://mysite.mydomain.com:8443/testSearch/results?postcode=WN8+0BA
根本无法显示我用几种不同浏览器尝试过的页面:IE 给出了毫无意义的“Internet Explorer 无法显示网页”;铬给
SSL connection error
Unable to make a secure connection to the server. This may be a problem with the server or it may be requiring a client authentication certificate that you don't have.
Error 107 (net::ERR_SSL_PROTOCOL_ERROR): SSL protocol error.
火狐给了我
An error occurred during a connection to mysite.mydomain.com:8443.
SSL received a record that exceeded the maximum permissible length.
(Error code: ssl_error_rx_record_too_long)
但即使是 Firebug Net 选项卡也没有告诉我更多信息。
我在 VM apache 的访问或错误日志中没有得到任何信息,所以我怀疑 vagrant 根本没有转发 ssl。
- 虚拟机客户操作系统:centos56x64
- 主机:Windows 7 64 位
- JRuby:1.6.3 (ruby-1.8.7-p330) (2011-07-07 965162f) (Java HotSpot(TM) 64-Bit Server VM 1.6.0_24) [Windows 7-amd64-java]
- 流浪者:0.7.8
- 虚拟盒子:4.0.12
我们将不胜感激地接受任何帮助。