Neste caso, não é tanto o pedido (uma boa explicação de como localização e regex é avaliada pode ser encontrada aqui: link ).
Para coisas como blocos de localização, a versão curta é a melhor combinação de vitórias, em vez da primeira correspondência.
No seu caso, no entanto, o pedido conta porque você usa return
. Por link :
Stops processing and returns the specified code to a client. The non-standard code 444 closes a connection without sending a response header.
A chave aqui é que return
pára imediatamente o processamento / avaliação, então o que está acontecendo é que o nginx não está olhando nada abaixo de return
.
Você só precisa mover essa cláusula return
abaixo do bloco de localização.
Quanto ao teste, eu tentaria adicionar --test-cert
à sua linha de comando (consulte link ).
Isso deve evitar o "problema" que você está tendo ao tentar usar o servidor de produção, que informa que você tem um certificado válido e não precisa de um novo no momento.