World Wide Web
Qu'est ce que se cache derrière cette simple action?
- Page web adressée par une URL
- L'URL a deux composants: nom d'hôte et chemin d'accès
- Modèle client-serveur
- L'agent utilisateur pour le web est le browser
- Ms Internet Explorer, Opera, Firefox, Netscape Communicator…
- Le serveur web:
- Apache, Ms Internet Information Server (IIS)…
- Utilisation du protocole HTTP
[...] Le serveur HTTP du site www.esprit.tn attend une connexion TCP sur le port 80. “accepte” la connexion, et l'annonce au client 4. Le serveur HTTP reçoit le message de requêtes, génère les messages de réponse contenant l'objet requis (siteweb/index.html), et l'envoie sur une socket time esprit < number > Exemple HTTP 6. [...]
[...] Le client HTTP reçoit la réponse contenant le fichier HTML , l'affiche. En décodant le fichier, le browser trouve les URLs référées 7. Les étapes 1-5 sont répétées pour chaque URLs référencées 5. [...]
[...] Le client HTTP initie une connexion TCP au serveur HTTP sur le site www.esprit.tn. Le port 80 est choisi par défaut 3. Le client HTTP envoie les requêtes HTTP (contenant des URLs) par les sockets TCP 2. [...]
[...] Coût nul (Open Source) flexibilité: supporter de nombreux modules(intégration de Php, Perl, CGI, ) Portabilité: multi-platforme(Windows et Unix) Performance Le serveur HTTP le plus utilisé des serveurs en 2004) esprit < number > Les fichiers du paquetage Apache /etc/init.d/httpd : le script de gestion du démon start, stop, restart, reload, status /etc/httpd/conf/httpd.conf : le fichier de configuration /var/www/* : l'emplacement des fichiers servis par le serveur esprit < number > La mise en œuvre du service HTTP installation configuration lancement reconfiguration Relancement test ok /etc/httpd/conf/httpd.conf /etc/init.d/httpd /etc/httpd/conf/httpd.conf /etc/init.d/httpd esprit < number > Les directives générales ServerRoot Emplacement des fichiers de configuration AllowOverride Désactivation du fichier .htacces ServerName Nom du serveur qui sera retourné au navigateur ServerAdmin Adresse de courrier de l'administrateur Port Numéro de port TCP/IP DocumentRoot Emplacement des fichiers HTML AddModule et Loadmodule Ajout et chargement de modules externes esprit 06/11/19 < number > Démonstration asf_logo_wideesprit < number > Conclusion Limites d'Apache Pas d'interface graphique Bonne connaissance du système UNIX Bonne connaissance du fichier de configuration Autres utilisations du serveur web. esprit < number > Merci pour votre attention Questions? [...]
[...] Le serveur HTTP ferme la connexion TCP time protocoleHTTPesprit 06/11/19 < number > Les versions HTTP Connexion non persistante HTTP 1.0 (RFC 1945) La connexion TCP est fermée à chaque fois que le serveur répond à une requête Chaque connexion TCP transporte un message requête et un message réponse Connexion persistante HTTP 1.1 (RFC 2068) Le serveur garde la connexion TCP ouverte après la réponse Les requêtes et réponses subséquentes entre le même client et le serveur sont envoyées sur la même connexion Mais la plupart des navigateurs de version 1.0 utilisent des connexions parallèles esprit < number > Deux Types de messages HTTP: Requête et Réponse esprit 06/11/19 < number > Format du message HTTP: requête < Méthode > Ligne blanche\r\n Corps de la requête Ligne de requête L'entête de la requête Corps de la requête esprit < number > Les méthodes de la requête HTTP Demander une ressource: GET: requête de la ressource située à l'url spécifiée (le corps de la requête est vide) Post: envoie de données au programme situé à l'url spécifiée (le corps de la requête est utilisé) Avoir de l'information sur une ressource: Head: requête de la ressource située à l'url spécifiée (la réponse ne contient que l'entête, et pas le contenu de la ressource) Options: connaître les options qui sont applicables à la ressource Mettre à jour une ressource à distance: Put: la créer ou remplacer son contenu Delete: la détruire esprit < number > Les champs de la requête HTTP Accept: type du contenu accepté par le navigateur (texte,image, lien ) Content-Length: longueur du corps de la requête IF-Modified-Since: dernière date de réception du contenu de la ressource Host: Nom du serveur/domaine de destination User-Agent: information sur le client, comme le nom et la version du navigateur, du système d'exploitation esprit < number > Exemple de requête: Get /siteweb/index.html HTTP/ 1.1 User-agent: Mozilla/ 4.0 Accept: text/html, image/gif, image/jpeg Accept-language: fr Host:www.esprit.tn If-Modified-Since: Fri Mar 2006 10:30:12 GMT Méthode utilisée URL Version HTTP 1.1 Navigateur: Mozilla Type: texte, image Serveur destination Dernière date de modification esprit Si un utilisateur entre l'URL: www.esprit.tn/siteweb/index.html < number > Format du message HTTP: réponse Ligne blanche\r\n Corps de la réponse Ligne statut Ligne de champ Corps de la réponse esprit < number > Les codes retour de la réponse 20x: Réussite – indique que la transaction est réussie eg: le plus courant est le code 200 30x: Déplacement – indique que l'adresse url ne peut être rejointe parce que le document a été déplacé 40x: Erreur client – indique que la requête contient une erreur de syntaxe ou ne peut être complétée eg: l'erreur ‘404 Not found': objet demandé n'existe plus eg: l'erreur ‘403 Forbiden' après la saisie d'un mauvais mot de passe 50x: Erreur serveur – indique que le serveur n'a pas réussi à compléter une requête valide esprit < number > Les champs d'une réponse HTTP Server: nom et la version du serveur HTTP Date: date courante Last-modified: date à laquelle le document a été modifié Expires: Date à laquelle le document expire Centent-length: longueur totale du champ de données Content-type: le type du document esprit < number > Exemple de réponse HTTP/ ok Connection: close Date: fri Mar 2006 10:33:15 GMT Server: Apache/ (Unix) Content-length: 6821 Content-type: text/html, image/gif, image/ipeg Data data . Version du protocole Code retour Fermeture de la connexion Nom et la version du serveur Contenu du fichier demandé esprit < number > Le cryptage de HTTP(HTTPS) HTTPS: HTTP + SSL SSL:Secured Socket Layer entre la couche application et la couche transport Objectifs de HTTPS: Crypter les communications Identifier le serveur le serveur auquel je suis connecté est-il le bon ? Identifier le client la personne qui se connecte au serveur est-elle la bonne ? [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture