HaProxy Load Balancer和Nginx Basic Auth

时间:2015-08-22 05:28:35

标签: nginx haproxy

我有一个带基本身份验证的nginx服务器

 location / {
      root   /var/www/mywebsite.com;
      index  index.html index.htm;
      auth_basic "Restricted";                                #For Basic Auth
      auth_basic_user_file /etc/nginx/.htpasswd;  #For Basic Auth
  }

服务器位于HAProxy负载均衡器之后。有没有办法可以让负载均衡器将用户名和密码发送给nginx进行身份验证?

1 个答案:

答案 0 :(得分:0)

我想通了,两步回答。

步骤1 Base64编码用户名和密码。假设用户是johndoe,密码是abc123。

$bash: echo -n johndoe:abc123 | openssl enc -a
Output: am9obmRvZTphYmMxMjM=

步骤2是将其添加到HAProxy配置的后端

backend application-backend
    balance     roundrobin
    log             global
    option http-server-close  
    option forwardfor
    reqadd Authorization:\ Basic\ am9obmRvZTphYmMxMjM=