Comment rediriger toutes les requettes HTTP vers HTTPS sur un serveur Web Nginx

Partagez sur:

J’ai acheté un certificat SSL pour mon domaine. Comment pourrais-je installer ce certificat et rediriger toutes les requêtes HTTP vers HTTPS sur le serveur Web Nginx?

Réponse: nous pouvons facilement réécrire / rediriger toutes les requêtes HTTP vers HTTPS avec le serveur Web Nginx. La syntaxe est la suivante. Nous devons ajouter les directives d’emplacement ou de serveur suivantes:

Réécrire la syntaxe

return    301 https://$server_name$request_uri;

 

Exemple de fichier de configuration

server {
        listen 80;
        server_name example.com;
        access_log off;
        error_log off;
        return      301 https://$server_name$request_uri;
    }
    server {
        listen 443 http2 ssl;
        server_name example.com;
        ssl_certificate /etc/letsencrypt/live/r00t4bl3.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/r00t4bl3.com/privkey.pem;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_session_cache shared:SSL:10m;
        ssl_session_timeout 10m;
    }

Recharger le serveur Web Nginx

sudo service nginx reload

Test

$ curl -I http://example.com
HTTP/1.1 301 Moved Permanently
Server: nginx/1.10.2
Date: Thu, 02 Nov 2017 18:13:42 GMT
Content-Type: text/html
Content-Length: 185
Connection: keep-alive
Location: https://www.example.com/

Si le code de réponse est 301 et l’emplacement est https, alors tout est OK.

 


Partagez sur: