web-dev-qa-db-fra.com

Le site est accessible par domaine dans tous les navigateurs mais Chrome

J'essaie de créer un site Web à l'aide d'une machine Ubuntu exécutant nginx. Pour une raison quelconque, je peux accéder au site par le nom de domaine dans Safari et Firefox, mais dans Chrome il ne peut pas accéder au serveur. Cependant, je peux utiliser curl, Postman, etc. et je récupère le fichier index.html comme je le voudrais.

J'ai trouvé que dans Chrome je peux accéder au site en utilisant l'adresse IP, et je suis totalement perdu sur où vérifier ensuite.

Voici mon fichier de configuration:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;

    index index.html index.htm index.nginx-debian.html;

    server_name _;

    location / {
            # First attempt to serve request as file, then
            # as directory, then fall back to displaying a 404.
            try_files $uri $uri/ =404;
    }

}

J'ai changé le code de réponse juste pour m'assurer qu'il s'agit bien de la configuration que je frappe réellement.

Toute aide serait appréciée!

Edit: Le domaine est gwilliam.dev

30
Andrew Gwilliam

Votre problème est dû au fait que vous utilisez un .dev domaine.

L'ensemble .dev domaine de premier niveau (TLD) est sur la liste de préchargement HSTS et cela signifie que vous devez y accéder en utilisant HTTPS. Selon votre extrait de configuration nginx, vous fournissez uniquement des liaisons HTTP, pas HTTPS.

En fait, je suis surpris que vous puissiez accéder au domaine à l'aide de Firefox, puisque Firefox a forcé .dev vers HTTPS depuis au moins mi-2018. Vous utilisez peut-être une ancienne version très, auquel cas vous devez mettre à niveau immédiatement.

Le moyen le plus simple d'obtenir une prise en charge HTTPS sur votre site est LetsEncrypt . Une fois que vous avez configuré cela, votre site devrait fonctionner dans Chrome.

84
Moshe Katz

Commencez par vérifier que chrome résout correctement le nom d'hôte du site cible (FQDN) à la bonne adresse IP, en consultant le cache DNS de Chrome quelques secondes après avoir essayé d'ouvrir le site dans Chrome. Vous pouvez afficher le Chrome cache DNS en ouvrant chrome: // net-internals/# dns dans Chrome.

Selon que le nom de domaine complet est répertorié dans le cache DNS de Chrome et si l'IP est correcte, vous aurez une idée de la marche à suivre.

Si le nom de domaine complet est répertorié mais incorrect, Chrome obtient la mauvaise adresse IP quelque part. S'il n'est même pas répertorié, alors Chrome ne résout pas l'adresse IP.) Quoi qu'il en soit, vous réduirez ce qui se passe réellement.

Quelques choses à essayer avec Chrome.

  1. Essayez dans un onglet privé.
  2. Connectez-vous au même ordinateur en tant qu'utilisateur différent. Si le comportement est le même, il s'agit d'un paramètre à l'échelle du système, peut-être la version Chrome. Si cela fonctionne comme un autre utilisateur, c'est un problème dans votre Chrome = profil.
  3. Essayez de configurer temporairement un nouveau profil utilisateur Chrome pour voir si cela résout le problème. Si tel est le cas, c'est l'un de vos paramètres Chrome Chrome. Vous pouvez google où vous Chrome est localisé, ce qui varie en fonction du système d'exploitation. Tout ce que vous avez à faire est de le déplacer hors de la route pendant que Chrome est fermé, puis lorsque vous rouvrez Chrome il générera un nouveau profil. Une fois la vérification terminée, vous pouvez supprimer le nouveau profil temporaire et restaurer l'original. Il y a beaucoup d'informations sur la façon de faire cela, donc Google pour des captures d'écran/détails si vous en avez besoin.
2
user1522091