J'ai ajouté la déclaration de serveur suivante afin que tout www. Les demandes préfixées doivent rediriger vers l'URL non www.
server { listen 80 default_server; listen [::]:80 default_server; # Redirect all HTTP requests to HTTPS with a 301 Moved Permanently response. return 301 https://spottingquotes.ca$request_uri; }
3 Réponses :
Pas la meilleure réponse, mais cela semble poisson. Vous avez 2 en-têtes sur strict-transport-sécurité. Le premier n'inclut pas le sous-domaine, le second fait. Pouvez-vous essayer de supprimer celui-ci sans elle Cet article a plus d'informations p> https://www.nginx.com/blog/http-truct-transport-security-hsts-and-nginx/ p> p>
Merci d'avoir souligné cela, il a été ajouté à Nginx et à la demande elle-même. J'ai corrigé ce problème, mais le problème initial persiste.
Pourquoi cette déclaration de serveur attrape-t-elle la demande correctement sur la première demande mais pas les demandes suivantes. P> blockQuote>
Je pense que cela n'a rien à voir avec le serveur, mais un comportement par défaut des navigateurs Webkit. Si vous examinerez la console de développeurs, vous verrez le message suivant (pris de Chrome 71, peut être différent pour Safari ou autre): P>
Redirection de la navigation www.spottingquotes.ca -> SpottingQuotes.ca Parce que le serveur a présenté un certificat valide pour SpottingQuotes.ca mais pas pour www.spottingquotes.ca. Pour désactiver de telles redirections, lancez Chrome avec le drapeau suivant: Fonctionnalités suivantes = SSLCOMMONMACHACHTHANDLING CODE> P>
Je ne sais pas pourquoi une telle redirection ne se produit pas pendant la deuxième fois, comme Microsoft disait dans leurs articles de KB, "Ce comportement est par conception" :) p>
dans les navigateurs à base de gecko comme Firefox Aucune redirection se produit et il jette un avertissement de sécurité immédiatement. P>
Comment puis-je résoudre ce problème? P> blockQuote>
Je pense que la seule façon de le faire est d'obtenir un certificat pour deux noms de domaine. Il ne devrait y avoir aucun problème pour le faire avec lesencypt. Si vous avez accès à DNS pour ce domaine, vous pouvez même obtenir un certificat wildcard. P>
Le problème a fini par être que je n'avais pas le certificat SSL pour la configuration de domaine www.spottingQuotes.ca. Je devais configurer un bloc de serveur comme si: exécutant maintenant le script CURL affiche chaque URL redirige correctement. P> p>