l 场景一:如果用户端通过http访问Apache,Apache也通过http访问后端系统;如果用户端通过https访问Apache,则apache也通过http访问后端系统。在这种情况下httpd.conf配置修改如下:
###################################3
#这声明对于Https的请求处理
###################################3
<VirtualHost *:443>
#这部分内容保持原来的配置
…
########################################################
# 以下为启用SSL代理的声明,否则不起作用
########################################################
# 声明ssl代理引擎
SSLProxyEngine on
# 这里声明代理的URL转换处理
# 注意需要使用域名,否则证书、用户页面的URL会有问题
ProxyPass / https://www.yeepay.com/
ProxyPassReverse / https://www.yeepay.com/
</VirtualHost>
#############################################################
# 这里单独声明对Http的请求处理
# 注意,这里需要修改,原来不在<VirtualHost>中,把它放进来
#############################################################
<VirtualHost *:80>
#这部分内容保持原来的配置,如果没有就空着
…
ProxyPass / http://www.yeepay.com/
ProxyPassReverse / http://www.yeepay.com/
</VirtualHost>
如何验证SSL代理正确?
1) 在linux中,运行如下命令检查ssl连接状态
for (( i=0; i<10000; i++ )) do netstat -an | grep :443 ; sleep 1; done
2) 在游览器上访问https://www.yeepay.com,同时查看linux上的端口,确定有与后端:443端口的新连接
l 场景二:不管用户端通过http/https访问Apache,Apache都通过http访问后端系统。
修改httpd.conf配置文件中“<VirtualHost *:443>”部分:“SSLProxyEngine off”,并把https修改为http
l 场景三:不管用户端通过http/https访问Apache,Apache都通过http访问后端系统。
修改httpd.conf配置文件中“<VirtualHost *:80>”部分:“SSLProxyEngine on”,并把http修改为