Apr 13

nginx配置https服务的负载均衡

可以参考这篇文章:CentOS / Redhat: Install nginx As Reverse Proxy Load Balancer

需要注意几点:

  1. 如果是前端一个nginx带后端几个apache,且nginx通过443端口提供https服务,那么后端的apache是不需要配置https的,只要把nginx的443服务proxy给apache的80端口就可以了。一般情况下nginx和apache处于同一个局域网内,安全问题暂时忽略。否则,如果apache如果也配置了https,访问nginx时会出现400错误。
  2. 如果需要在nginx服务配置rewrite来强制使用https连接,可以通过这样的语句(if条件可以有多个,注意if后面一定要有空格):

if ($query_string ~ ^/.*url=ajax.*){
break;
}
rewrite ^(.*)$ https://$host$1 permanent;