Zde je pracovní metoda přesměrování jakékoli požadované HTTP URL na HTTPS v NginX VirtualHosts, které zpracovávají HTTP i HTTPS.
Například, chcete-li mít jeden vhost podporující HTTP i HTTPS, máte normálně následující direktivy:# Support for HTTP and HTTPS
listen 80;
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/www.myserver.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.myserver.com/privkey.pem;
Poté pro přesměrování všech požadavků HTTP na HTTPS v rámci tohoto vhost bez vytváření nekonečných smyček přidáte následující přesměrování:if ($scheme != "https") {rewrite ^ https://$host/$request_uri permanent;}
Další metody lze vidět zde:
http://serverfault.com/questions/67316/in-nginx-how-can-i-rewrite-all-http-requests-to-https-while -mainkeeping-sub-dom