我在使用proxy_hcheck_module来为https协议进行负载平衡请求时遇到问题。对于http运行,对指定的hcinterval进行运行状况检查。它对https请求没有任何作用。
我尝试升级apache,以为它将是apache的版本。我尝试将日志与http和https进行比较,但无法确定是否有任何故障。我在一些帖子中提到了打开TRACE2的日志记录,但是没有运气。我正在使用的apache版本是2.4.27
httpd.conf的内容
Listen 9446
<VirtualHost *:9446>
ServerName server
ServerName server
SSLEngine On
SSLProxyEngine On
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyProtocol all
SSLProxyCipherSuite ALL
SSLCertificateFile /apps/apache-2.4.27/httpd/ssl/crt
SSLCertificateKeyFile /apps/apache-2.4.27/httpd/ssl/key
SSLProxyMachineCertificateFile /apps/apache-2.4.27/httpd/ssl/pem
RewriteEngine On
Include conf.d/mule-mapping-lb-https.conf
</VirtualHost>
mule-mapping-lb-https.conf的文件内容:
<Proxy "balancer://index" lbmethod=byrequests>
BalancerMember "https://server1:20002/appcreation/api" hcmethod=GET hcuri=status.html hcinterval=5
BalancerMember "https://server2:20002/appcreation/api" hcmethod=GET hcuri=status.html hcinterval=5
</Proxy>
ProxyPass "/index.html" "balancer://index"
我希望Apache服务器也开始对https URI运行运行状况检查。
如果server2发生故障,它将无法识别并且仍然将请求发送到该位置,这将导致我的情况失败。如果找不到uri,我希望server2不接收任何流量。该代码不会检查uri是否可用。