Finalmente encontrei o problema. A solução de trabalho é feita configurando 2 servidores:
http {
server {
server_name foo;
listen 443 ssl;
return 301 https://foo.example.internal$request_uri;
}
server {
server_name foo.example.internal;
listen 443 ssl;
# rest of configuration
}
}