Problème avec un nom d'hôte

Bonjour à tous,

J’ai récemment découvert l’existence du fichier /etc/hosts et j’ai voulu effectuer un petit test en créant un nouveau nom d’hôte pour l’adresse 127.0.0.1, comme ceci:

127.0.0.1	moi

Cependant, lorsque j’essaye d’accéder à la page de gestion de CUPS via mon navigateur en entrant moi:631, j’ai droit à “400 Bad Request”. Pourtant, cela fonctionne avec le nom d’hôte localhost qui est défini de la même manière. Quelqu’un peut-il m’éclairer sur le sujet?

Merci d’avance pour vos réponses.

Deux mots : HTTP 1.1 et l’entête Host.
Je te laisse chercher à quoi ça correspond et pourquoi ça te retourne une erreur 400, là tout de suite j’ai la flemme d’expliquer. :wink:

Hmmm… Mise à part le fait que l’en-tête Host est obligatoire dans une requête HTTP1.1, j’avoue ne pas avoir appris grand chose au cours de mes recherches (ou plutôt compris grand chose :whistle: ). Je comprend d’autant moins que si je crée un nom d’hôte sur une autre machine de mon réseau local, par exemple comme ceci:

192.168.1.2	Adalbert

Cela fonctionne sans problème… J’ai droit à un autre indice? :mrgreen:

w3.org/Protocols/rfc2616/rfc … tml#sec5.2

Pourquoi est-ce que ça marche dans le cas que tu viens de citer ? Deux possibilités :

  • la plus probable : tu n’utilises pas la même IP, en interne le serveur web de CUPS applique des règles différentes pour la vérification du nom d’hôte
  • moins probable : Adalbert est le nom réel de ta machine (le même que celui retourné par hostname quand tu le lances sur la bécane où CUPS tourne)

Merci pour cette réponse, j’y vois déjà plus clair :wink:
Dans le cas de l’exemple ci-dessus, cela fonctionne effectivement parce que le nom réel du serveur est Adalbert (oui, c’est de mauvais goût, et alors? :whistle: ).

Cependant, il y a toujours quelque chose que je n’ai pas compris:

Si “moi” est défini dans le fichier /etc/hosts du serveur, pourquoi n’est-il pas considéré comme un nom d’hôte valide puisque le serveur est censé le connaître?

Et si dans le hosts de ta deuxième machine tu remplaces Adalbert par autre chose, ça fonctionne toujours ? Je suis quasiment sûr que non.

Le fichier hosts fait une correspondance à sens unique nom => IP.
Pour la correspondance IP => nom, deux cas :

  • l’IP est 127.0.0.1, le nom est localhost
  • l’IP est autre, le nom est donné par la commande hostname

En effet, j’ai fait le test et dans ce cas cela ne fonctionne plus.

Ok, voilà qui répond parfaitement à ma question, merci beaucoup :wink:
Sujet résolu.