SNT Web URL

Identification

Infoforall

3 - Comprendre les urls


Nous avons vu que le Web est constitué de l'ensemble des documents hypertextes accessibles via un navigateur par exemple.

Mais comment parvenir à trouver une ressource parmi cette multitude ?

1 - Qu'est-ce qu'une URL ?

URL

URL veut dire Uniform Resource Locator, soit « localisateur uniforme de ressource ».

C'est un système normé (possédant des règles) permettant d'effectuer une demande sans créer d’ambiguïté sur la demande elle-même : chaque demande ne peut renvoyer qu'une page unique.

01° Ouvrir un navigateur (qui est un client HTTP) et copier l'adresse ci-dessous dans la barre d'adresse du navigateur. vous devriez atteindre une page Web, celle du CERN concernant le Web.

http://info.cern.ch/hypertext/WWW/TheProject.html

Attention : ne tapez pas l'adresse dans un moteur de recherche. Tapez bien cela directement dans la barre d'adresse. Sur certains navigateurs, celle-ci est maintenant cachée par défaut...

Décomposition d'une URL

On voit que l'adresse fournie est composée de plusieurs parties :

  • Le protocole : on explique dans quelle langue on parle.
    Ici http://
    • http:  : on commence par signaler le protocole qu'on désire utiliser pour communiquer avec le serveur HTTP. On doit faire suivre le nom du protocole par le caractère « deux points »  :  pour signaler qu'on a fini de transmettre le nom du protocole.
    • // signale que notre protocole nécessite qu'on fournisse une adresse (ici un serveur HTTP) et que nous allons le transmettre juste après.
  • L'adresse éventuelle du service à joindre: on explique à qui on veut parler.
    Ici info.cern.ch
    • info.cern.ch : cette partie identifie clairement le serveur du site sur lequel on doit se connecter.
  • La demande à faire pour atteindre la ressource une fois qu'on discute avec le bon service : on explique la ressource qu'on veut obtenir à service précédent.
    Ici /hypertext/WWW/TheProject.html
    • Une adresse commençant par  /  veut dire que l'adresse qui suit est une adresse absolue sur le site : on va donner un chemin partant du « début », la racine du site.
    • Cette adresse peut être omise : si on ne fournit rien derrière le nom du site, cela veut donc dire qu'on désire simplement la page d'accueil.

02° Déterminer, à partir de l'URL fournie ci-dessous :

https://doc.infoforall.fr/commun/images/accueil_blender_150.png

  • le protocole,
  • le site exact à joindre,
  • la demande à faire sur le site

...CORRECTION...

  • le protocole : https, attention au S.
  • le site exact à joindre : doc.infoforall.fr
  • la demande à faire sur le site : /commun/images/accueil_blender_150.png
HTTPS ?

HTTP veut dire Hypertext Transfer Protocol, soit protocole de transfert hypertexte. Il s'agit du protocole de communication client-serveur développé pour le World Wide Web en 1990.

Simple et élégant, ce protocole a néanmoins un gros défaut : il ne crypte en aucun cas les données lors du transfert. Si quelqu'un écoute la communication, il peut donc connaitre la teneur de l'échange entre le serveur et le client.

HTTPS (avec un S pour sécurisé) est une variante du HTTP : dans cette variante le message est crypté. Seul le serveur et le client peuvent connaitre la teneur de l'échange.

Si quelqu'un écoute le serveur, il peut savoir avec qui il communique. Par contre, il ne pourra pas connaitre le contenu de l'échange. C'est déjà mieux.

Nous verrons par contre que le HTTPS peut être dangereux du point de vue de la liberté du Web : le protocole nécessite la présence d'organismes certificateurs qui peuvent donc être influencés et refuser certaines certifications.

03° Est-il prudent de se connecter sur un site HTTP pour réaliser un paiement en ligne et fournir des informations bancaires ? Quelle doit-être la couleur du cadenas à gauche de l'adresse ?

...CORRECTION...

Le manque de sécurité ne provient pas du site en lui-même. Un site en HTTP peut être tenu par des gens sérieux. NEANMOINS, s'ils sont sérieux, ils devraient savoir qu'on peut assez facilement écouter les paquets qui transitent jusqu'à eux. Transmettre des informations bancaires en HTTP n'est donc pas serieux à l'heure actuelle.

Le simple HTTPS ne garantit pas le sérieux en lui-même.

Dernier point : vérifier bien que le cadenas est vert. Sinon, cela montre un problème direct ou inderect vis à vis de la sécurisation.

04° HTTPS signifie-t-il que le site est sérieux et qu'on peut lui transmettre des informations bancaires sans problème ?

...CORRECTION...

La sécurité ne provient pas du signe HTTPS.

Un site frauduleux peut toujours se faire passer pour un site sérieux dans un premier temps. Comme tout commerce en réalité !

Avant de lancer un paiement, tenter donc de vous renseigner sur ce site via un moteur de recherche. Cherchez des avis de clients par exemple.

Sortons maintenant de ces histoires de protocoles et revenons à la dernière partie de l'URL : celle où on donne le chemin d'accés.

Les clients et serveurs HTTP sont créés avec une volonté de robustesse : ils sont capables de compléter des URL incomplètes.

05° Utiliser successivement les adresses proposées :

http://info.cern.ch/hypertext/WWW/TheProject.html

http://info.cern.ch/hypertext/WWW

http://info.cern.ch/hypertext

http://info.cern.ch

Le site Web vous propose-t-il une réponse dans tous les cas ?

...CORRECTION...

Sur la plupart des sites, fournir un simple chemin d'accès permet d'obtenir une ressource correspondant à la page d'accueil de la catégorie.

Nous verrons plus tard les sites dits dynamiques qui générent les pages actualisées, variant en fonction des données enregistrées sur le serveur.

2 - Requête HTTP et réponse HTTP

Nous venons de voir que le client fait une requête notamment à l'aide des informations situées derrière le nom du serveur, la partie où on précise quelle ressource on désire sur ce serveur.

Firefox permet d'observer une partie de la requête faite et de la réponse obtenue.

06° Dans Firefox, activer le menu, choisir Développement Web puis réseau :

Accès à l'outil Réseau

07° Relancer la page https://www.infoforall.fr/act/snt/comprendre-les-urls/ sur laquelle vous êtes actuellement.

Remonter en haut des fichiers que vous venez de télécharger : vous devriez tomber sur un fichier HTML.

Quel est le code obtenu sur la plupart des fichiers ?

Parvenez-vous à reconnaitre d'autres types de fichiers parmi les fichiers affichés ?

Voici un visuel des choses qu'on peut obtenir avec https://www.infoforall.fr :

Résultats d'une requête

...CORRECTION...

Sur le visuel, on voit que le premier document est un document de type HTML.

Le code 200 permet d'indiquer que la requête et la réponse se sont bien déroulées. Tout est ok.

On voit que le navigateur a fait plusieurs demandes :

  • D'abord le fichier HTML
  • Ensuite deux fichiers CSS
  • Ensuite des images

Nous verrons plus tard comment le navigateur sait quels fichiers demandés en plus du premier fichier HTML recu. Ne vous posez pas trop de questions pour le moment.

08° Cliquer sur la première ligne : celle du fichier HTML. Vous devriez obtenir un affichage proche de celui présenté ci-dessous.

Détails d'une requête

09° En regardant le détail de la demande, répondre aux questions suivantes :

  • Avez-vous effectué une requête de type GET (obtenir du serveur) ou de type POST (envoyer/poster des informations au serveur) ?
  • Quelle est l'adresse IP (adresse numérique) du site joignable par www.infoforall.fr ?

...CORRECTION...

Nous avons fait une requête de type GET : on veut juste recevoir des informations

L'adresse IP du site est notée : 185.31.40.11:443.

10° Aller sur la zone permettant de vous connecter sur ce site (en haut à droite). Si vous êtes connecté, il faudra d'abord cliquer sur votre alias pour vous déconnecter. Retenter alors la connexion. Sinon, tentez de vous connecter sans connaitre ni d'alias, ni de mot de passe. Observez le type de réponse obtenue.

  • Avez-vous effectué une requête de type GET (obtenir du serveur) ou de type POST (envoyer/poster des informations au serveur) ?
  • Quelle est l'adresse IP (adresse numérique) du site joignable par www.infoforall.fr ?

A titre d'exemple, voici un résultat après une tentative d'identification :

Détails d'une requête post

...CORRECTION...

Nous avons fait une requête de type POST : on transmet des données au serveur lors de la demande.

L'adresse IP du site est toujours notée : 185.31.40.11:443.

La tentative est ratée mais on obtient bien un code 200 : il s'agit du fonctionnement normal.

11° Faire une demande inconnue comme https://www.infoforall.fr/ast/snt/historique-du-webeeux/. Comment le navigateur va-t-il savoir que quelque chose s'est mal passé ? Quelle est le numéro de la réponse cette fois ?

Erreur 404

...CORRECTION...

Il s'agit de la fameuse erreur 404 !

Lorsque le navigateur reçoit une réponse http de ce type du serveur, il sait que le serveur lui dit que sa requête n'a pas pu aboutir pour une raison simple : la ressource demandée n'existe pas ! La plupart du temps, il s'agit d'une ressource qui a existé mais qu'on a supprimé du serveur.

La plupart des sites proposent des pages 404 personnalisées.

12° Faire la requête inconnue suivante sur le site de blizzard :

https://www.blizzard.com/fr-fr/testrate/.

Répondre ensuite aux questions suivantes :

  • Quel protocole a été utilisé ?
  • Quel est le nom du serveur à contacter ?

...CORRECTION...

  • Quel protocole a été utilisé ? https
  • Quel est le nom du serveur a contacté ? www.blizzard.com
  • Quelle est la requête demandée à ce serveur ? /fr-fr/testrate/
  • Quel est son IP ? 52.50.176.12:443
  • Quel est le numéro de sa réponse ? 404 !

3 - Nom de domaine

Nom de domaine

Lorsqu'on possède un nom de domaine (cern.ch, wikipedia.org …), on peut se créer autant de sous-domaine qu'on le désire. Par contre, ils seront toujours à gauche dans le nom permettant d'accéder au site, pas à droite.

Ainsi, le propriétaire de infoforall.fr peut créer les sous-domaines suivants :

  • www.infoforall.fr
  • nsipourtoujours.infoforall.fr
  • jecomprendsrienalinformatique.infoforall.fr

Dans tous les cas, le propriétaire reste le même.

Le sous-domaine le plus courant est www pour world wide web. Il était utilisé très couramment pour montrer que cette adresse menait à un site Web.

13° Observer l'adresse pour cette activité dans Firefox. Quel est la couleur du sous-domaine ?

...CORRECTION...

Firefox affiche le sous-domaine en gris et le domaine principal en noir :

https://www.infoforall.fr/act/snt/comprendre-les-urls/

Remarque : un nom de domaine est toujours composé d'un nom suivi d'une extension (.com, .fr, .org …) qui correspond au domaine de premier niveau. Les sous-domaines, le domaine et l'extension sont tous séparés par un point (dot en anglais).

14° Remplir les cases pour les adresses proposées dans le tableau ci-dessous.

URL Sous-domaine Domaine Extension (fr com ...)
www.wikipedia.fr
fr.wikipedia.org
www.openoffice.org
www.qwant.com

15° Un e-commerce vous propose de payer un magnifique achat en ligne sur www.paypal.paiement.securise.com. C'est sérieux ou pas cette histoire ? Vous payez ou pas ?

...CORRECTION...

Si vous avez bien suivi, vous n'allez certainement pas être redirigé vers le site de paypal mais vers le site de quelqu'un qui possède le nom de domaine securise.com et qui y a placé un sous-domaine paiement puis encore un sous-domaine paypal puis un sous-domaine www. Bref, ce n'est pas le propriétaire de paypal.

4 - Les problèmes du https

Vous vous connectez à un site en https mais un triangle jaune apparaît à côté de son adresse.

Que faire ?

Et bien cela veut dire :

  • soit que la connexion n'est que partiellement sécurisée (il y a des images provenant de sites non https par exemple)
  • soit que le propriétaire du site utilise une auto-certification. C'est compréhensible pour un site de particulier, moins pour un site de ecommerce : cela permet au particulier d'avoir un site avec une communication cryptée mais sans payer une société qui certifie qu'il est bien qui il prétend être.

16° Pourquoi tous les sites ne sont-ils pas passés en https ?

...CORRECTION...

Pour garantir qu'il s'agit bien d'une communication cryptée et qu'elle est bien établie avec le bon site, il faut fournir des certificats et rajouter une couche technique sur le site Web.

Tout cela a un coût.

Sur un site sans connexion à établir sur un compte utilisateur, cela coûte donc cher, pour rien : pourquoi protéger une connexion s'il n'y a rien à protéger ?

Autre raison, plus politique : les certificats sont générés par des sociétés privées, influencables. Si elles révoquent votre certificat, les internautes ne pourront plus se connecter à votre beau site en https ! Votre site disparait purement et simplement du Web, le temps de le remettre en http.

Maintenant que vous comprenez un peu mieux toute cette mécanique, il est temps d'apprendre à créer votre première page Web. C'est le but de la prochaine activité.

Activité publiée le 16 09 2019
Dernière modification : 23 09 2019
Auteur : ows. h.