web-dev-qa-db-fra.com

Cloudflare et nginx: trop de redirections

J'essaie de configurer NGINX et cloudflare. J'ai lu à ce sujet sur Google mais rien n'a résolu mon problème. Mon cloudflare est actuellement actif. J'ai supprimé toutes les règles de page dans cloudflare, mais auparavant, j'avais domain.com et www.domain.com pour utiliser HTTPS. Je pensais que cela pouvait être à l'origine du problème, alors je l'ai supprimé. Voici mon default fichier NGINX, dans le but de n'autoriser que l'accès par nom de domaine et d'interdire l'accès par valeur IP du site:

server{

  #REDIRECT HTTP TO HTTPS

  listen 80 default;
  listen [::]:80 default ipv6only=on; ## listen for ipv6
  rewrite ^ https://$Host$request_uri? permanent;

}

server{

  #REDIRECT IP HTTPS TO DOMAIN HTTPS       

    listen 443;
    server_name numeric_ip;
    rewrite ^ https://www.domain.com; 

}

server{

  #REDIRECT IP HTTP TO DOMAIN HTTPS

    listen 80;
    server_name numeric_ip;
    rewrite ^ https://www.domain.com;

}

server {

         listen 443 ssl;
         server_name www.domain.com domain.com;
         #rewrite ^ https://$Host$request_uri? permanent;
         keepalive_timeout 70;

         ssl_certificate     /ssl/is/working.crt;
         ssl_certificate_key /ssl/is/working.key;

         ssl_session_timeout 1d;
         ssl_session_cache shared:SSL:50m;

         #ssl_dhparam /path/to/dhparam.pem;

         ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
         ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM$
         ssl_prefer_server_ciphers on;

         add_header Strict-Transport-Security max-age=15768000;

         (...) more ssl configs

Qu'est-ce qui pourrait être éteint? Je fournirai des informations supplémentaires si nécessaire ...

19
Fane

Après les essais, nous avons constaté que cela n'était lié qu'à Cloudflare. Parce que je n'ai eu aucun problème de redirection avant de passer à Coudflare.

Dans mon cas, c'était une solution simple comme celle-ci. Sélectionnez la case [Crypto] et sélectionnez Complète (stricte) comme dans l'image.

enter image description here

Vraiment, vous pouvez l'essayer avant toute autre action.

55
prosti

Ces questions avec des redirections fugitives reviennent tout le temps!

Habituellement, le problème réside dans le fait que 301 Moved Permanently les réponses sont souvent mises en cache dans les navigateurs "pour de bon", et il n'y a souvent aucun moyen de CtrlR ni CtrlShiftR hors de lui, à moins de vider tout le cache. (C'est l'une des raisons pour lesquelles je préfère souvent 302 Found / 302 Moved Temporarily à la place, en particulier pendant la phase de développement, car 302 les réponses ne sont généralement pas du tout mises en cache par défaut.)

De plus, si vous avez déjà utilisé HSTS, qu'il a été récupéré avec succès et installé silencieusement par le navigateur sous le capot, et qu'il n'a jamais été explicitement effacé ni expiré, le navigateur ne fera jamais de demandes ultérieures sur http:// jusqu'à et à moins que la politique ne soit effacée - toutes les demandes seront toujours terminées https://.

Quant à mettre CloudFlare dans le mélange, cela ne soulage-t-il pas la nécessité d'avoir autant de définitions de serveur et de redirections différentes, car votre adresse IP est censée être cachée? Je ne sais pas à quoi cela sert de cacher vraisemblablement votre adresse IP derrière CloudFlare, mais de révéler ouvertement le nom de domaine qu'il sert à quiconque effectue une analyse Internet globale.

Comme vous avez déjà parcouru tous les "modes SSL" proposés par CloudFlare, je vous suggère de changer toutes vos 301 permanent redirections en 302 temporaires redirects (si vous ne les supprimez pas entièrement dans le en premier lieu), videz le cache du navigateur, puis réessayez de contourner les options ssl. :-)

14
cnst

Accédez à la section Règles de page et vérifiez si vous disposez d'une règle "toujours rediriger vers https". Je l'avais par défaut.

2