nginx http - https redireciona adicionando vírgula extra com o nome do host

1

Eu tenho um servidor que sempre deve servir https e eu tento fazer o nginx redirecionar automaticamente de http para https. lendo outras questões sobre este assunto aqui, eu escrevi a seguinte configuração:

server {
    listen         80;
    return 301 https://$host$request_uri;
}


server {
    listen          443 ssl;
    server_name         *.amazonaws.com *.mydomain.com;

    ssl_certificate         /home/ubuntu/mysite/ssl.cert;
    ssl_certificate_key     /home/ubuntu/mysite/ssl.key;

        location = /favicon.ico { access_log off; log_not_found off; }
    location /static/ {
                autoindex on;
        alias /home/ubuntu/mysite/__staticfiles;
    }

    location / {
        include         proxy_params;
        proxy_pass      http://unix:/home/ubuntu/mysite/mysite.sock;

        proxy_set_header   Host              $http_host;
        proxy_set_header   X-Real-IP         $remote_addr;
        proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
    }

}

observe que o nome_do_servidor * .amazonaws.com é, portanto, poderei usar o DNS público da amazon, por exemplo, "ec2-12-345-678-9.compute-1.amazonaws.com"

agora aqui está o problema: quando eu entro em qualquer endereço http com o amazon dns, por exemplo:

http://ec2-12-345-678-9.compute-1.amazonaws.com/admin

Estou sendo redirecionado para isso:

https://%2A.amazonaws.com/admin

e se eu for para https:

https://ec2-12-34-567-8.compute-1.amazonaws.com/admin

Estou chegando aqui:

https://ec2-12-34-567-8.compute-1.amazonaws.com%2Cec2-12-34-567-8.compute-1.amazonaws.com/admin/

o que estou fazendo de errado?

obrigado,

    
por Ronen Ness 30.08.2015 / 12:11

0 respostas

Tags