Apache做HTTPS反向代理,兼评价一下hipchat

话说偶然看到Atlassian有个hipchat,其实早有了,2012被收购了。

hipchat有自己的server模式,提供了一个ova虚拟机,鉴于描述的太美好,我就试了试。

 

首先是它要使用几个端口,80,443,5222,5223,这是没商量的,鉴于80和443都已经是apache的了,不想浪费一个公网ip,就直接把虚拟机Bridge模式改为NAT了,然后悲剧了两天。

80端口的反向代理很容易,但是443端口的,花了一天时间才搞明白,话不多说直接贴配置,apache 2.4:

<VirtualHost *:443>
    ServerAdmin [email protected]
    ServerName hipchat.test.com
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
    SSLEngine On
    SSLProxyEngine On
    SSLProxyVerify none
    SSLProxyCheckPeerCN off
    SSLProxyCheckPeerName off
    SSLCertificateFile "D:/services/web/Apache24/conf/hipchat/star_hipchat_com_chain.crt"
    SSLCertificateKeyFile "D:/services/web/Apache24/conf/hipchat/star_hipchat_com.key"

    ProxyRequests Off
    ProxyPreserveHost On

    ProxyPass / https://192.168.133.201/
    ProxyPassReverse / https://192.168.133.201/
</VirtualHost>

 

crt和key文件,可以用自己的ssl配置的,也可以用hipchat自带的,我是直接用了自带的,hipchat的server里面,执行lsof -i:443发现是nginx占用的,直接看nginx配置文件得到证书和私钥,然后sz发出来。

 

https模式的反向代理,需要注意的是这三行:

    SSLProxyVerify none
    SSLProxyCheckPeerCN off
    SSLProxyCheckPeerName off

 

搜了好多配置都不好用,最后好用的这个,出处是:http://serverfault.com/questions/538086/proxyerror-ah00898-error-during-ssl-handshake-with-remote-server

 

这样再vmware NAT映射一下5222和5223,就可以用了(注意需要在防火墙里面打开对应端口)。

 hipchat提供了全方位的windows,linux,mac,android,ios的客户端。实际测试,在服务器带宽和速度都不错的情况下,在可用的情况下语音和文字效果不错,其他视频和桌面分享基本就是渣...

 

hipchat启动一次耗时很长,主要是因为架构太复杂了,据我观察包括php,python,java,好像还有点ruby,还跑了个ElasticSearch服务器做检索,架构之复杂也是叹为观止了。

hipchat不靠谱之处还在于,周末这两天,https://www.hipchat.com/和https://www.hipchat.com/server都没好用过,服务一直是挂的。

另外如果你想测试,文档里面提到hipchat network命令可以修改ip地址,但是千万注意这个命令需要很长时间才能完成,半路停下来可能会导致服务失效(因为ip地址没全改利索)!

 开始使用NAT模式,终于跑起来之后,发现语音视频什么的接通率特别低,就两个用户的情况下半天能通一次,语音效果尚可,其他基本没法看;最后实在受不了了切换到独立ip模式,发现...然而并没有什么卵用!

 

总之结论就是强烈不推荐自己host的server!

你可能感兴趣的:(apache)