Introduction aux Technologies de Web

Transcription

Introduction aux Technologies de Web
Introduction aux Technologies de Web
Mourad Oudghiri
FSO - Département Math-Info
[email protected]
Octobre 2014
Mourad Oudghiri
Introduction aux Technologies de Web
Connaissances générales sur Internet
Site web
Site Web
Le site web est une collection de pages web reliées entre elles,
d’mages, vidéos...etc. Chaque site web est hébergée par un
serveur et identifiée par son URL (Unified Resource Locator) :
http://www.nomdedomaine.domaineracine
/dossier/sous-dossier/nomdelapage.htm
www est l’abréviation de World Wide Web est qui veut dire
la toile d’araignée mondiale en anglais.
http:// signifie que l’on recherche une page web.
Nomdedomaine.domaineracine remplace l’adresse IP
et identifie le serveur hébergeant.
Nomdelapage.htm est le nom de la page recherché sur
le serveur.
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Introduction
Présentation
Le protocole HTTP (HyperText Transfer Protocol) est le
protocole de transport de données le plus utilisé sur Internet. Il
est lui-même basé sur :
protocole de rapatriement des documents
protocole de soumission de formulaires
Ainsi, le protocole HTTP permet de transférer des fichiers,
essentiellement au format HTML, localisés grâce à leur URL
entre un navigateur, appelé client, et un serveur Web appelé
httpd sur les systèmes de type LUNIX.
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Introduction
En bref,...
HTTP est devenu le protocole de communication de
l’Internet.
HTTP est disponible sur toutes les plates-formes.
HTTP requière peu de support pour fonctionner
correctement.
HTTP est un protocole sans connexion : Peu de paquets
sont nécessaires pour échanger des informations.
HTTP offre un niveau de sécurité simple et effectif.
HTTP est le seul protocole utilisable à travers des pare-feu.
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Requêtes HTTP
Fonctionnement
Connexion du client vers le serveur.
Demande d’une information via une méthode.
Renvoi du document ou d’une erreur.
Déconnexion.
Méthodes
Récupérer un document : méthode GET.
Soumettre un formulaire : méthode GET (les variables sont
passées par l’URL) ou POST (transmet les variables de
manière masquée mais non cryptée).
Récupérer des infos sur le document : méthode HEAD.
Création une nouvelle ressource : méthode PUT.
Supprimer une ressource : méthode DELETE.
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Requêtes HTTP
Requêtes
Requête HTTP : Méthode URL VersionHTTP
En utilisant Telnet ou un Terminal
[root]# telnet sciences1.ump.ma 80
Connected to sciences1.ump.ma
(196.200.156.109).
GET http://sciences1.ump.ma HTTP/1.0
HTTP/1.1 200 OK
Date: Wed, 21 Apr 2010 20:57:39 GMT
Server: Apache/2.2.3 (CentOS)
Last-Modified: Tue, 20 Apr 2010 18:18:32 GMT
Content-Length: 8018
Connection: close
Content-Type: text/html
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Requêtes HTTP
Dans l’entête de la requête on peut fournir les informations
suivantes (facultatif):
User-Agent : Navigateur (Ex. Mozilla, Internet Explorer,
Netscape)
Accept : Formats souhaités recevoir (Ex. text/html,
image/jpeg, image/png)
Accept-Charset : jeu de caractères (iso-8859-1, utf-8)
Accept-Language : Langue (Ex. fr, en)
Le corps de la requête contient les clés et leur valeurs.
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Requêtes HTTP
Requête envoyée par Mozilla utilisant GET
GET sciences1.ump.ma HTTP/1.0
Connection: Keep-Alive
User-Agent: Mozilla/5.0 (compatible;
Konqueror/3.1; Linux; fr)
Pragma: no-cache
Cache-control: no-cache
Accept: text/html, image/jpeg, image/png,
text/*, image/*, */*
Accept-Encoding: x-gzip, x-deflate, gzip,
deflate, identity
Accept-Charset: iso-8859-1, utf-8;q=0.5,
*;q=0.5
Accept-Language: fr, en
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Requêtes HTTP
Le serveur répond
HTTP/1.0 200 OK
Date: Wed, 21 Apr 2010 20:57:39 GMT
Server: Apache/2.2.3 (CentOS)
Last-Modified: Tue, 20 Apr 2010 18:18:32 GMT
ETag: "63f3d-8e-40d830ff"
Content-Length: 142
Keep-Alive: timeout=15, max=2000
Connection: Keep-Alive
Content-Type: text/html
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Requêtes HTTP
Requête envoyée par le navigateur avec la méthode POST
Quand l’utilisateur remplie un formulaire formé par les champs
nom et prénom, et clique sur Envoyer, le navigateur envoie au
serveur la requête suivante :
POST http://wwww.exemple.com HTTP/1.0
.
.
.
nom=toto&prenom=younes&submit=Envoyer
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Requêtes HTTP
Status des réponses HTTP
Réponse donnée par le serveur au client :
1xx : Informationnel
2xx : Succès de la requête client.
200 = OK, 204 = No Content
3xx : Redirection de la requête client.
301 = Redirection, 305 = Use Proxy
4xx : Requête client incomplète.
400 = Bad Request , 401 = Unauthorized, 404
= Not Found
5xx : Erreur Serveur.
500 = Internal Server Error, 503 = Service
Unavailable, 505 = HTTP Version not
supported
Mourad Oudghiri
Introduction aux Technologies de Web
Protocole HTTP
Autres protocoles
Autres protocoles
Protocole DNS : permet de retrouver une adresse IP en
fonction d’un nom d’ordinateur (un peu comme un
annuaire).
Protocole FTP : sert à transporter des fichiers d’un
ordinateur à l’autre.
Protocole IRC : permet de créer des «salons» de
discussion en direct.
Protocole ICQ : permet de savoir si quelqu’un est en ligne
et de dialoguer avec lui.
Protocole NTP : permet de mettre les ordinateurs à l’heure
par internet à 500 millisecondes près.
Protocoles P2P : permettent de partager des fichiers à
grande échelle (Emule, BitTorrent,...).
Protocole SSH : permet d’avoir un accès sécurisé à des
ordinateurs distants.
Oudghiri d’envoyer
Introduction aux
Technologies
de Web
Protocole SMTPMourad
: permet
des
emails,
et le
Serveurs Web
Serveurs existant
Les serveurs web qui dominent sur le réseau internet sont :
Apache
Internet Information Server (IIS) de Microsoft
Mourad Oudghiri
Introduction aux Technologies de Web
Serveurs Web
Serveurs existant
Parts de marché (PDM)
Serveur
Apache
Microsoft
Google
nginx
lighttpd
Avril 2010
110,752,854
51,284,570
13,749,829
12,977,486
1,078,403
Mourad Oudghiri
PDM
53.93%
24.97%
6.70%
6.32%
0.53%
Introduction aux Technologies de Web
Serveurs Web
Serveur Apache
Pourquoi utiliser Apache?
Serveur open source : http://httpd.apache.org.
Robuste, rapide, stable et sécurisé.
Très grande réactivité dans la correction de tout bogue
identifié.
Très configurable et modulaire ce qui permet d’ajouter de
nouvelles fonctionnalités.
Multi-plateformes (Unix, Windows)
Mourad Oudghiri
Introduction aux Technologies de Web
Serveurs Web
Serveur Apache
Ce qu’il faut pour un serveur Apache?
Apache s’exécute sur n’importe quel type de machine.
Processeur : un simple processeur pour un serveur de
sites WEB peu exigeant. un multiprocesseur pour des
sites utilisant de nombreuses bases de données.
Mémoire : plus de mémoire vive ⇒ plus de données
traitées ⇒ les accès sont accélérées.
Disque dur : Pour des sites à grande audience, plusieurs
disques de tailles moyennes sont conseillés : un disque
dur ne peut lire qu’à un seul endroit à la fois.
Carte réseau : une carte Ethernet de type 100baseT (débit
théorique de 100Mb/s).
Adresse IP : pour héberger des sites web, le serveur doit
avoir une adresse IP fixe.
Mourad Oudghiri
Introduction aux Technologies de Web