haproxy 配置https 同時技持443 80埠

weixin_33912246發表於2017-07-07

 確定haproxy支援https

[root@c01 sbin]# ldd haproxy |grep ssl
	libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f961911c000)

整合證照和私鑰:

# cat 213978673141013.key 213978673141013.pem |tee server.pen

 

檢視配置檔案:

    global
            log 127.0.0.1 local0 info #[err warning info debug] //日誌位置  
            tune.ssl.default-dh-param 2048 #修改預設使用2048bit加密,不設定會有警告
            maxconn 4096
            daemon #設定成後臺執行  
            nbproc 1 #程式數量  
            pidfile /apps/haproxy-1.7.7/haproxy.pid

    defaults
            log     global
            mode    http #預設模式  
            option  httplog #http日誌格式  
            option  dontlognull
            retries 3  #三次失敗後認為伺服器不可用  
            option  redispatch  #如果cookie寫入了serverId而客戶端不會重新整理cookie,當serverId對應的伺服器掛掉後,強制定向到其他健康的伺服器  
            maxconn 2000 #當伺服器負載很高的時候,自動結束掉當前佇列處理比較久的連結預設的最大連線數  
            contimeout 5000 #連線超時  
            clitimeout 30000 #客戶端超時  
            srvtimeout 30000 #伺服器超時  

    frontend web_in
            mode http
            maxconn 1000
            bind *:80 
            bind *:443 ssl crt /etc/cert/server.pem 
            reqadd X-Forwarded-Proto:\ https #HTTP,HTTPS並存
            #redirect scheme https if !{ ssl_fc } 
            acl is_a hdr_beg(host) -i ssl.espressos1.com  #判斷域名是不是www.espressos1.com,是則給與a伺服器叢集服務  

            use_backend a_server if is_a
      
    backend a_server  
            mode http #http 模式  
            stats   uri  /haproxy  
            balance roundrobin
            cookie  JSESSIONID prefix  
            stats   hide-version
            option  httpclose  
            server web1 10.100.0.220:80 check
            #server web2 128.1.2.5:80 check 

 

相關文章