我使用HAProxy进行负载均衡,而我的HAProxy背后是Nginx,它只为我提供SSL终结。由于HAProxy也支持SSL终止,我想摆脱Nginx层。我的问题是,将Nginx持有的配置(如下所示)迁移到HAProxy是多么容易,也是可能的(据我所知,它是)?我理解HAProxy和Nginx的优点和缺点,因此我已经做出了这个决定。任何人都可以请我指向一个指南,这解释了这个或任何有用的见解非常感谢。我在互联网上找到的博客间接地抓住了这个话题。我主要担心的是不要回到我目前拥有的相同的基础设施设置(即HAProxy和nginx),只是后来才意识到haproxy不支持nginx支持的一些配置(配置完全如下)。
server {
listen 10.0.9.74:8443 ssl;
listen 10.0.9.74:8080;
server_name example.com abc.xyz.de *.abc.xyz.de;
ssl_certificate /etc/ssl/certs/xyz.de.crt;
ssl_certificate_key /etc/ssl/private/xyz.de.key;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
#ssl_ciphers RC4:HIGH:!aNULL:!MD5;
ssl_ciphers EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:+RC4:RC4;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 1m;
location / {
proxy_pass http://haproxy;
proxy_redirect off;
proxy_connect_timeout 300;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Ssl on;
client_max_body_size 100M;
client_body_buffer_size 128k;
charset utf-8;
}
include /etc/nginx/snicloudssl.conf;
}