rewriterule redirigir doesn redirect ssl nginx https

redirigir - redirect http request to https nginx



NGINX redirige http a https y no www a ww (2)

El redireccionamiento SSL no funcionará si su certificado ssl no es compatible con el dominio que no es www. La configuración es correcta, pero se puede reducir a solo 1 servidor de redirección

Además, no te olvides de volver a cargar el sudo service nginx reload

server { listen 80; listen 443 ssl; server_name example.com; # add ssl settings return 301 https://www.example.com$request_uri; }

Estoy configurando un servidor nginx con un SSL.

El dominio con el ssl es www.midominio.com

Quiero redirigir todas las solicitudes de:

http://midominio.com , http://www.midominio.com , y https://midominio.com a

https://www.midominio.com

Tengo la siguiente configuración de bloques de servidor actualmente:

server{ listen 443 ssl; root /www/mydomain.com/; ssl_certificate /ssl/domain.crt; ssl_certificate /ssl/domain.key; . . . } server{ listen 80; server_name mydomain.com; return 301 https://www.mydomain.com$request_uri; } server{ listen 80; server_name www.mydomain.com; return 301 https://www.mydomain.com$request_uri; } server{ listen ssl 443; server_name mydomain.com; return 301 https://www.mydomain.com$request_uri; }

Esto actualmente no funciona, pero no entiendo por qué no. Puedo obtener una combinación de http -> https funcionando o no-www a -> www funcionando, pero mezclarlos como se indica arriba no funciona.


Llego tarde, pero puedes hacer esto

server{ listen 443 ssl; server_name www.mydomain.com; root /www/mydomain.com/; ssl on; ssl_certificate /ssl/domain.crt; ssl_certificate /ssl/domain.key; . . . } server{ listen 80; server_name www.mydomain.com mydomain.com; return 301 https://$server_name$request_uri; } server{ listen 443; server_name mydomain.com; return 301 https://www.$server_name$request_uri; }

O puede reemplazar el return 301 https://www.$server_name$request_uri; con rewrite ^ http://www.$server_name$request_uri? permanent; rewrite ^ http://www.$server_name$request_uri? permanent; , ambos funcionarán

También debe configurar esto en google webmaster para un mejor SEO.