haproxy com SSL na frente do apache para desenvolvimento local

1

Eu trabalho em um aplicativo da Web que faz regularmente chamadas AJAX para um servidor REST que (em produção) é acessado pelo mesmo domínio. Durante o desenvolvimento local, eu tenho redirecionado as chamadas REST para um servidor dev usando o haproxy para contornar as restrições de solicitação de origem cruzada do navegador.

haproxy.cfg

global
 maxconn 4096
 pidfile ~/tmp/haproxy.pid

defaults
 log global
 log 127.0.0.1 local0
 log 127.0.0.1 local1 notice  
 mode http
 timeout connect 300000
 timeout client 300000
 timeout server 300000
 maxconn 2000
 option redispatch
 retries 3
 option httpclose
 option httplog
 option forwardfor
 option httpchk HEAD / HTTP/1.0


frontend dev
   bind *:8080 ssl crt /path/to/proxy.pem

    acl                             allow_php               path_beg /app/
    acl                             allow_rest              path_beg /rest/

    use_backend                     be_php                  if allow_php
    use_backend                     be_rest                 if allow_rest

backend be_php
 balance roundrobin
 server localhost_80 localhost:80

backend be_rest
 balance roundrobin
 server dev_80 dev.example.com:80

Isso funciona como esperado:

  • https://localhost:8080/app/login exibe o mesmo que http://localhost/app/login
  • https://localhost:8080/rest/test response é o mesmo que http://dev.example.com/rest/test

O problema surge quando tento configurar o haproxy para SSL entre o HAproxy e os back-ends (que esperam SSL).

De acordo com toda a documentação que li, as alterações a seguir devem estar todas definidas:

backend be_php
    balance roundrobin
    server localhost_443 localhost:443 ssl verify none

backend be_rest
    balance roundrobin
    server dev_443 dev.example.com:443 ssl verify none

Mas depois de fazer essas alterações, https://localhost:8080 solicita tempo limite. Tanto o backend php quanto o backend REST podem ser acessados diretamente via https://localhost/app/... e https://dev.example.com/rest/...

Alguma idéia do que estou fazendo errado?

EDIT: Atualizado para refletir o comentário de @ Michael-sqlbot

    
por thedarklord47 14.06.2016 / 00:06

0 respostas