Não posso apenas comentar, então postei isso como uma resposta: você poderia nos dar parte ou toda a configuração do nginx para que possamos ver o que há de errado com isso? Possivelmente sua configuração HAProxy também?
O primeiro problema que posso pensar é que o seu HAProxy está fazendo terminação SSL.
Para resumir, para descarregar seus servidores de back-end, um balanceador de carga pode ser configurado para fazer todo o ssl e, em seguida, se comunicar com seus servidores de back-end em HTTP.
Como o esquema aqui:
Para lhe dar uma boa resposta à sua pergunta, você pode verificar se não tem nenhum problema de loopback na sua configuração http < > https? Talvez você possa redirecionar http para http, https para https e forçar o redirecionamento do http para https.
Você poderia checar também se você habilitou o ssl passthrough em sua configuração do HAProxy?
Outra solução poderia ser usar o mapa conforme descrito aqui: mas não é exatamente o que eu acho que você quer alcançar, não?