INF8007 Langages de script

Dimension: px
Commencer à balayer dès la page:

Download "INF8007 Langages de script"

Transcription

1 INF8007 Langages de script Sockets et serveur 1/18 INF8007 Langages de script Sockets et serveur Michel Desmarais Génie informatique et génie logiciel École Polytechnique de Montréal Hiver, 2014

2 INF8007 Langages de script Sockets et serveur 2/18 Sockets et serveur 1 Requête HTTP 2 Module SocketServer 3 Module BaseHTTPServer

3 INF8007 Langages de script Sockets et serveur 3/18 Serveur web Quelques notions de base d un serveur Web Écoute sur un port donné, par défaut le port 80. Pour éviter un conflit avec un serveur existant, on utilise souvent le port 8080 pour un serveur HTML alternatif. Attention : deux serveurs ne doivent pas écouter sur le même port. Deux types de requêtes : GET : requête avec paramètes fournis dans l appel ; normalement utilisé pour une requête simple qui n a pas d effet de bord POST : requête avec un corps contenant des paramètres

4 INF8007 Langages de script Sockets et serveur 4/18 Anatomie d une requête HTTP $ telnet en.wikipedia.org 80 Trying Connected to en.wikipedia.org ( ). GET /wiki/main_page http/1.1 Host: en.wikipedia.org HTTP/ OK Date: Sun, 13 Sep :51:11 GMT Server: Apache Cache-Control: private, s-maxage=0, max-age=0, must-revalid Content-Language: en Vary: Accept-Encoding,Cookie Last-Modified: Sun, 20 Sep :32:30 GMT Content-Length: Content-Type: text/html; charset=utf-8 Age: 10426

5 INF8007 Langages de script Sockets et serveur 5/18 SocktServer et BaseHTTPServer Deux librairies de base sont utiles pour créer un serveur Web : SocketServer : gestion de la connection et des requêtes pour les protocoles TCP et UDP socketserver.html BaseHTTPServer : surclasse SocketServer pour fournir la base d un serveur HTTP basehttpserver.html

6 INF8007 Langages de script Sockets et serveur 6/18 Sockets et serveur 1 Requête HTTP 2 Module SocketServer 3 Module BaseHTTPServer

7 INF8007 Langages de script Sockets et serveur 7/18 Exemple de SocketServer # coding = Latin -1 # Tiré de # http :// docs. python. org / library / socketserver. html import SocketServer class MyTCPHandler ( SocketServer. BaseRequestHandler ): """ Surclassement de BaseRequestHandler Instantié à chaque connection ; surcharge handle () """ def handle ( self ): # self. request est le socket TCP # connecté au client self. data = self. request. recv ( ). strip () print "%s a écrit :" % self. client_address [0] print self. data # renvoit les données en majuscules self. request. send ( self. data. upper ())

8 INF8007 Langages de script Sockets et serveur 8/18 Exemple de SocketServer (suite) if name == " main ": HOST, PORT = " localhost ", 9999 # Créé le serveur au port 9999 de localhost server = SocketServer. TCPServer (( HOST, PORT ), \ MyTCPHandler ) # Active le serveur ; roule jusqu ' à une # interruption par Ctrl - C server. serve_forever ()

9 INF8007 Langages de script Sockets et serveur 9/18 Une requête à ce serveur Une connection telnet permet de valider le serveur : telnet localhost 9999 foobar FOO BAR Une requête d un fureteur (http://localhost:9999) nous permet d inspecter la réponse : GET / HTTP/1.1 HOST: LOCALHOST:9999 USER-AGENT: MOZILLA/5.0 (X11; U; LINUX X86_64; EN-US; RV: ) GECKO ACCEPT: TEXT/XML,APPLICATION/XML,APPLICATION/XHTML+XML,TEXT/HTML;Q=0.9,T ACCEPT-LANGUAGE: FR,FR-FR;Q=0.8,EN-US;Q=0.5,EN;Q=0.3 ACCEPT-ENCODING: GZIP,DEFLATE ACCEPT-CHARSET: ISO ,UTF-8;Q=0.7,*;Q=0.7 KEEP-ALIVE: 300 CONNECTION: KEEP-ALIVE

10 INF8007 Langages de script Sockets et serveur 10/18 Requête avec un POST Supposons que le fichier HTML suivant est soumis au serveur : <HTML><BODY> <form method= POST enctype= multipart/form-data action= > File to upload: <input type=file name=upfile><br> <br> <input type=submit value=press> to upload the file! </form> </BODY> </HTML> Il créé une requête POST dont le résultat est à la page suivante.

11 INF8007 Langages de script Sockets et serveur 11/18 Requête transmise au serveur POST / HTTP/1.1 HOST: LOCALHOST:9999 [...] CONTENT-TYPE: MULTIPART/FORM-DATA; BOUNDARY= CONTENT-LENGTH: CONTENT-DISPOSITION: FORM-DATA; NAME="UPFILE"; FILENAME="UPLOAD.HTML" CONTENT-TYPE: TEXT/HTML <HTML><BODY> <FORM METHOD= POST ENCTYPE= MULTIPART/FORM-DATA ACTION= [...] CONTENT-DISPOSITION: FORM-DATA; NAME="HID1" ABC

12 INF8007 Langages de script Sockets et serveur 12/18 Sockets et serveur 1 Requête HTTP 2 Module SocketServer 3 Module BaseHTTPServer

13 INF8007 Langages de script Sockets et serveur 13/18 Le module BaseHTTPServer Voir http: //docs.python.org/library/basehttpserver.html Le module BaseHTTPServer surclasse le module SocketServer.BaseServer La classe BaseHTTPServer.BaseHTTPRequestHandler facilite la gestion des requêtes et réponses HTTP en offrant une série de variables et méthodes dédiées. Nécessite de surcharger les méthodes do *(), notamment : do GET() do POST()

14 INF8007 Langages de script Sockets et serveur 14/18 Un exemple (1) # coding = Latin -1 # Inspiré du code webserver. py de Jon Berg, turtlemeat import string, cgi, time from os import curdir, sep from BaseHTTPServer import BaseHTTPRequestHandler, \ HTTPServer class MyHandler ( BaseHTTPRequestHandler ): def do_get ( self ): [... ] def do_post ( self ): [... ] def main (): [... ] if name == ' main ': main ()

15 INF8007 Langages de script Sockets et serveur 15/18 Un exemple (2) def main (): try : server = HTTPServer (('', 8080 ), MyHandler ) print ' serveurweb démarré... ' server. serve_forever () except KeyboardInterrupt : print ' Interruption ^C, arr^et du serveur ' server. socket. close () if name == ' main ': main ()

16 INF8007 Langages de script Sockets et serveur 16/18 Un exemple (3) def do_get ( self ): try : if self. path. endswith (". html "): f = open ( curdir + sep + self. path ) self. send_response ( 200 ) self. send_header ('Content - type ', \ 'text / html ') self. end_headers () self. wfile. write (f. read ()) f. close () return return except IOError : self. send_error (404,\ ' Fichier non trouvé : %s' % self. path )

17 INF8007 Langages de script Sockets et serveur 17/18 Un exemple (4) def do_post ( self ): global rootnode try : ctype, pdict = cgi. parse_header (\ self. headers. getheader ('content - type ')) if ctype == ' multipart /form - data ': query = cgi. parse_multipart ( self. rfile,\ pdict ) self. send_response ( 301 ) self. end_headers () upfilecontent = query. get ('upfile ') print " filecontent ", upfilecontent [ 0] self. wfile. write ("<HTML > POST OK.<BR ><BR >"); self. wfile. write ( upfilecontent [0]); except : pass

18 INF8007 Langages de script Sockets et serveur 18/18 Un exemple (5) Pour l utilisation de la librairie cgi, voir : parse_header parse_multipart

Cours Web : Introduction

Cours Web : Introduction Cours Web : Introduction Catherine Letondal letondal@pasteur.fr Institut Pasteur Cours Web IEB 2005 p.1/?? Pourquoi un cours Web? le Web : c est stratégique en biologie c est un bon exemple de système

Plus en détail

HTTP HTTP. IUT1 dpt SRC L Isle d Abeau Jean-françois Berdjugin. Introduction et architecture Messages Authentification Conclusion

HTTP HTTP. IUT1 dpt SRC L Isle d Abeau Jean-françois Berdjugin. Introduction et architecture Messages Authentification Conclusion HTTP IUT1 dpt SRC L Isle d Abeau Jean-françois Berdjugin HTTP Introduction et architecture Messages Authentification Conclusion 1 HTTP Introduction et architecture Hypertext Transfert Protocol URI (Uniform

Plus en détail

Gilles.Roussel univ-mlv.fr HTTP/1.1 RFC 2068

Gilles.Roussel univ-mlv.fr HTTP/1.1 RFC 2068 HTTP/1.1 RFC 2068 1 Caractéristiques Niveau application Sans état Tout transfert de données Au dessus du protocole TCP Largement utilisé dans le World Wide Web Utilise les normes : URI (Uniform Resource

Plus en détail

Types MIME (2) Typage des ressources Internet. Les URI. Syntaxe dans les URI. Possibilité de spécifier un paramètre du sous-type

Types MIME (2) Typage des ressources Internet. Les URI. Syntaxe dans les URI. Possibilité de spécifier un paramètre du sous-type Typage des ressources Internet Types MIME (Multi-purpose Internet Mail Extension) RFC 2046. Composé par un type et un sous-type Les types principaux sont les suivants text image audio video message multipart

Plus en détail

Protocoles Applicatifs

Protocoles Applicatifs Programmation Réseau Protocoles Applicatifs Jean-Baptiste.Yunes@liafa.jussieu.fr UFR Informatique 2011-2012 Protocoles Protocoles applicatifs on appelle protocole applicatif ou protocole d application

Plus en détail

A6 - HTTP ESIROI 2014-2015

A6 - HTTP ESIROI 2014-2015 A6 - HTTP ESIROI 2014-2015 HTTP HyperText Transfer Protocol Protocole synchrone 3 version : HTTP/0.9 (obsolète) HTTP/1.0 (rare) HTTP/1.1 HTTP - fonctionnement Requête Réponse Icones : http://www.visualpharm.com/

Plus en détail

INSA - ASI TechnoWeb : Serveur Web et protocole HTTP 1/40. Technologie Web. Serveur Web et protocole HTTP. Alexandre Pauchet

INSA - ASI TechnoWeb : Serveur Web et protocole HTTP 1/40. Technologie Web. Serveur Web et protocole HTTP. Alexandre Pauchet INSA - ASI TechnoWeb : Serveur Web et protocole HTTP 1/40 Technologie Web Serveur Web et protocole HTTP Alexandre Pauchet INSA Rouen - Département ASI BO.B.RC.18, pauchet@insa-rouen.fr INSA - ASI TechnoWeb

Plus en détail

HTTP 1.1. HyperText Transfer Protocol ... ... TCP IP ...

HTTP 1.1. HyperText Transfer Protocol ... ... TCP IP ... HTTP 1.1 Place de http dans le modèle osi : HyperText Transfer Protocol...... TCP IP...... HTTP est un protocole «sans état» : chaque page WEB est transmise dans une connexion séparée (sauf pour les connections

Plus en détail

Pages WWW interactives et CGI

Pages WWW interactives et CGI Pages WWW interactives et CGI cgi-intro Pages WWW interactives et CGI Code: cgi-intro Originaux url: http://tecfa.unige.ch/guides/tie/html/cgi-intro/cgi-intro.html url: http://tecfa.unige.ch/guides/tie/pdf/files/cgi-intro.pdf

Plus en détail

Technologies du Web Master COMASIC Internet et HTTP

Technologies du Web Master COMASIC Internet et HTTP Technologies du Web Master COMASIC Internet et HTTP Antoine Amarilli 1 27 novembre 2014 1. Matériel de cours inspiré de notes par Pierre Senellart et Georges Gouriten. Merci à Pierre Senellart pour sa

Plus en détail

L3 informatique TP n o 2 : Les applications réseau

L3 informatique TP n o 2 : Les applications réseau L3 informatique TP n o 2 : Les applications réseau Sovanna Tan Septembre 2009 1/20 Sovanna Tan L3 informatique TP n o 2 : Les applications réseau Plan 1 Transfert de fichiers 2 Le Courrier électronique

Plus en détail

Serveurs de noms Protocoles HTTP et FTP

Serveurs de noms Protocoles HTTP et FTP Nils Schaefer Théorie des réseaux (EC3a) Serveurs de noms Protocoles HTTP et FTP Théorie des réseaux (EC3a) Séance 7 Pourquoi DNS? Internet est une structure hiérarchique et arborescente de réseaux et

Plus en détail

Internet. Web Sécurité Optimisation

Internet. Web Sécurité Optimisation Internet Web Sécurité Optimisation Objectif Survol Web / Optimisation / Sécurité Sommaire 1. Fondamentaux 2. Hotes virtuels 3. Règles de réécriture 4. Optimisations 1. Fondamentaux - DNS fsf.com => 208.73.210.29

Plus en détail

(structure des entêtes)

(structure des entêtes) Aide mémoire HTTP (structure des entêtes) Fabrice HARROUET École Nationale d Ingénieurs de Brest http://www.enib.fr/~harrouet/ enib 1/10 Structure générale d une requête Requête HTTP méthode ressource

Plus en détail

Failles XSS : Principes, Catégories Démonstrations, Contre mesures

Failles XSS : Principes, Catégories Démonstrations, Contre mesures HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Séminaire 15 ans HSC Failles XSS : Principes, Catégories Démonstrations,

Plus en détail

Développement Web. Les protocoles

Développement Web. Les protocoles Développement Web NFA016 2007-2008 Les protocoles CNAM le 28 octobre 2007 O. Pons S. Rosmorduc M. Simonot 1 / 27 Notion de protocole Un réseau : ensemble de machines reliées entre elles. Communiquer :

Plus en détail

«Cachez-moi cette page!»

«Cachez-moi cette page!» «Cachez-moi cette page!» Atelier Pratique 1h30 Hugo Hamon (@hhamon) http://hugohamon.com Qui suis-je? Au menu de cet atelier 1. Introduction 2. Avantages 3. Expiration (Expires & Cache-Control) 4. Validation

Plus en détail

Le protocole HTTP. Olivier Aubert 1/40

Le protocole HTTP. Olivier Aubert 1/40 Le protocole HTTP Olivier Aubert 1/40 Liens http://www.jmarshall.com/easy/http/ Références : RFC1945 (HTTP1.0), RFC2616 (HTTP1.1), RFC822 (format des entêtes), RFC2396 (syntaxe des URL), RFC1521 (types

Plus en détail

COMPRENDRE L ARCHITECTURE DES WEB SERVICES REST. Amosse EDOUARD, Doctorant

COMPRENDRE L ARCHITECTURE DES WEB SERVICES REST. Amosse EDOUARD, Doctorant COMPRENDRE L ARCHITECTURE DES WEB SERVICES REST Amosse EDOUARD, Doctorant Organisation Cours Magistral 24/11/2014 26/11/2014 01/12/2014 Travaux Dirigés 26/11/2014 28/11/2014 01/11/2014 08/11/2014 Evaluation

Plus en détail

Architecture client-serveur

Architecture client-serveur Architecture client-serveur Yannick Prié UFR Informatique Université Claude Bernard Lyon 1 Objectifs du cours Rappels sur les ordinateurs réseau et Internet. Communication entre programmes et entre machines.

Plus en détail

HTTP. Technologies du Web. Programmation Web côté serveur. Mastère spécialisé Management et nouvelles technologies, 16 novembre 2009

HTTP. Technologies du Web. Programmation Web côté serveur. Mastère spécialisé Management et nouvelles technologies, 16 novembre 2009 HTTP Technologies du Web Programmation Web côté serveur Pierre Senellart (pierre.senellart@telecom-paristech.fr) Mastère spécialisé Management et nouvelles technologies, 16 novembre 2009 P. Senellart (TELECOM

Plus en détail

Rapport : Analyse individuelle d un site web

Rapport : Analyse individuelle d un site web Rapport : Analyse individuelle d un site web Florian Thuin 06561100 SINF13BA Résumé Ce rapport décrit l analyse du site 7sur7.be dans le cadre du cours LINGI1341 - Réseaux informatiques. I. INTRODUCTION

Plus en détail

Une application bidon avec REST, SQL et Unicode, juste comme exemple

Une application bidon avec REST, SQL et Unicode, juste comme exemple Une application bidon avec REST, SQL et Unicode, juste comme exemple Stéphane Bortzmeyer Première rédaction de cet article le 25 juillet 2007. Dernière mise à jour le 31

Plus en détail

Introduction à HTTP. Chapitre 3 3.1 HTTP 0.9

Introduction à HTTP. Chapitre 3 3.1 HTTP 0.9 Chapitre 3 Introduction à HTTP L HyperText Transfer Protocol, plus connu sous l abréviation HTTP (littéralement protocole de transfert hypertexte ) est un protocole de communication client-serveur développé

Plus en détail

Protection des protocoles www.ofppt.info

Protection des protocoles www.ofppt.info ROYAUME DU MAROC Office de la Formation Professionnelle et de la Promotion du Travail Protection des protocoles DIRECTION RECHERCHE ET INGENIERIE DE FORMATION SECTEUR NTIC Sommaire 1. Introduction... 2

Plus en détail

Architecture client-serveur

Architecture client-serveur Architecture client-serveur Yannick Prié UFR Informatique Université Claude Bernard Lyon 1 2007-2008 Master SIB M1 UE 3 / Bloc 4 Cours 3 Objectifs du cours Rappels sur les ordinateurs réseau et Internet.

Plus en détail

1 Introduction...3 1.1 Propos du document...3 1.2 Introduction...3 1.3 De HTTP 1.0 à HTTP 1.1...3

1 Introduction...3 1.1 Propos du document...3 1.2 Introduction...3 1.3 De HTTP 1.0 à HTTP 1.1...3 Tutorial HTTP 1 Introduction...3 1.1 Propos du document...3 1.2 Introduction...3 1.3 De HTTP 1.0 à HTTP 1.1...3 2 URL HTTP...4 2.1 Format d une URL HTTP...4 2.2 Champs de l URL HTTP...4 2.3 Encodage d

Plus en détail

Le protocole HTTP. 10 minutes pour comprendre. HTTP/0.9 - Lacunes et limitations HTTP/1.0 HTTP/1.1

Le protocole HTTP. 10 minutes pour comprendre. HTTP/0.9 - Lacunes et limitations HTTP/1.0 HTTP/1.1 Le protocole HTTP 10 minutes pour comprendre HTTP/0.9 - Lacunes et limitations HTTP/1.0 HTTP/1.1 http://tic01.tic.ec-lyon.fr/~muller/cours-tdw/http.pdf http://tic01.tic.ec-lyon.fr/~muller/cours-tdw/httpbw.pdf

Plus en détail

RFC 7230 : Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing

RFC 7230 : Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing RFC 7230 : Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing Stéphane Bortzmeyer Première rédaction de cet article le 14 juin 2014 Date de publication du

Plus en détail

Systèmes et Réseaux UE 444

Systèmes et Réseaux UE 444 Systèmes et Réseaux UE 444 Partie 4 Services et Applications de l Internet Part 4 Contenu du module R2 Introduction des réseaux de communication Supports et circuit de données Liaison de données Mécanismes

Plus en détail

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé) Introduction PHP = Personal Home Pages ou PHP Hypertext Preprocessor Langage de script interprété (non compilé) Plan Avantages Fonctionnement interne Bases du langage Formulaires Envoi d un email Avantages

Plus en détail

Dans l'épisode précédent

Dans l'épisode précédent Dans l'épisode précédent 2 Le réseau SERVEURS POSTE CLIENT POSTE CLIENT wifi SERVEURS POSTE CLIENT switch Borne Wifi SERVEURS routeur POSTE CLIENT? SERVEURS SERVEURS SERVEURS POSTE CLIENT SERVEURS 3 Les

Plus en détail

2011 Hakim Benameurlaine 1

2011 Hakim Benameurlaine 1 Table des matières 1 Sécuriser un serveur Apache... 2 1.1 Afficher le moins d informations... 2 1.2 Désactiver la signature... 4 1.3 Limitations des attaques... 5 1.4 Bien définir un virtual host... 6

Plus en détail

TP DE PROGRAMMATION RESEAU : LES SOCKETS

TP DE PROGRAMMATION RESEAU : LES SOCKETS - ENSEIRB - TP DE PROGRAMMATION RESEAU : LES SOCKETS Patrice KADIONIK - 1/11- TABLE DES MATIERES www.enseirb.fr/~kadionik 1. BUT DES TRAVAUX PRATIQUES...3 2. SEANCE 1 : UTILISATION DES COMMANDES UNIX/LINUX

Plus en détail

Méta-connaissances pour générer des programmes sur le Web

Méta-connaissances pour générer des programmes sur le Web Méta-connaissances pour générer des programmes sur le Web Basile STARYNKEVITCH http://starynkevitch.net/basile/ basile@starynkevitch.net (à titre privé, sans rapport avec mon employeur CEA-LIST) Séminaire

Plus en détail

La sécurisation d applications

La sécurisation d applications Université Toulouse 1 Sciences Sociales 10 mars 2008 Les firewalls ne suffisent plus Mais ont-ils jamais été suffisants? La protection à 100% n existe pas. De plus certains protocoles doivent absolument

Plus en détail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Bases de Données et Internet

Bases de Données et Internet Informatique S6 3A Bases de Données et Internet Python: SGBD et CGI Alexis NEDELEC LISYC EA 3883 UBO-ENIB-ENSIETA Centre Européen de Réalité Virtuelle Ecole Nationale d Ingénieurs de Brest enib c 2008

Plus en détail

Réseaux. 1 Généralités. E. Jeandel

Réseaux. 1 Généralités. E. Jeandel 1 Généralités Réseaux Couche Application E. Jeandel Couche application Dernière couche du modèle OSI et TCP/IP Échange de messages entre processus Protocole Un protocole de niveau application doit spécifier

Plus en détail

Réseaux. Couche Application. E. Jeandel

Réseaux. Couche Application. E. Jeandel Réseaux Couche Application E. Jeandel 1 Généralités Couche application Dernière couche du modèle OSI et TCP/IP Échange de messages entre processus Protocole Un protocole de niveau application doit spécifier

Plus en détail

Tests de montée en charge avec Tsung

Tests de montée en charge avec Tsung Tests de montée en charge avec Rodolphe Quiédeville 10e Journées Du Logiciel Libre Lyon 17 et 18 octobre 2008 Rodolphe Quiédeville (Bearstech) Tests de montée en charge avec 17 et 18 octobre 2008 1 / 27

Plus en détail

Application Web et J2EE

Application Web et J2EE Application Web et J2EE Servlet, JSP, Persistence, Méthodologie Pierre Gambarotto Département Informatique et Math appli ENSEEIHT Plan Introduction 1 Introduction Objectfis

Plus en détail

WebSSO, synchronisation et contrôle des accès via LDAP

WebSSO, synchronisation et contrôle des accès via LDAP 31 mars, 1er et 2 avril 2009 WebSSO, synchronisation et contrôle des accès via LDAP Clément Oudot Thomas Chemineau Sommaire général Synchronisation d'identités WebSSO et contrôle des accès Démonstration

Plus en détail

Que désigne l'url donnée au navigateur?

Que désigne l'url donnée au navigateur? Que désigne l'url donnée au navigateur? http://www-poleia.lip6.fr/~jfp/istm/tp6/index.html Le protocole : pourquoi? Parce que la manière d'indiquer une adresse dépend du service postal utilisé... Le serveur

Plus en détail

Introduction à Internet: architecture et langages

Introduction à Internet: architecture et langages Introduction à Internet: architecture et langages Gilles Muller INRIA/LaBRI Septembre 2001 1 Plan du cours Internet éléments d'architecture introduction aux protocoles Les langages de l'internet HTML Les

Plus en détail

Développement des Systèmes d Information

Développement des Systèmes d Information Développement des Systèmes d Information Axe ISI Camille Persson Institut Fayol / LSTI / ISCOD École Nationale Supérieure des Mines de Saint-Etienne 158 cours Fauriel, 42000 Saint-Etienne persson@emse.fr

Plus en détail

L envoi d un formulaire par courriel. Configuration requise... 236 Mail Texte... 237 Mail HTML... 242 Check-list... 248

L envoi d un formulaire par courriel. Configuration requise... 236 Mail Texte... 237 Mail HTML... 242 Check-list... 248 L envoi d un formulaire par courriel Configuration requise... 236 Mail Texte... 237 Mail HTML... 242 Check-list... 248 Chapitre 9 L envoi d un formulaire par courriel L envoi par courriel d informations

Plus en détail

Protocole HTTP. Informatique et Science du Numérique

Protocole HTTP. Informatique et Science du Numérique Protocole HTTP Table des matières 1. Introduction...2 2. Historique...2 3. La commande GET...3 4. Comment travaille le navigateur...4 5. La première requête HTTP...5 6. La page d'accueil...7 7. Le cache...8

Plus en détail

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin Sécurité des sites Web Pas un cours un recueil du net INF340 Jean-François Berdjugin Vulnérabilité Définition (wikipédia) : Dans le domaine de la sécurité informatique, une vulnérabilité est une faiblesse

Plus en détail

La couche Applicatiopn

La couche Applicatiopn La couche Applicatiopn A. Obaid - Téléinformatique (INF3270) Applications 1 Applications 10. SERVICES DE sur TÉLÉMATIQUE Internet Il existe plusieurs applications et leurs protocoles sur Internet: Transfert

Plus en détail

Les services usuels de l Internet

Les services usuels de l Internet Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet Courrier électronique (mail) - protocole SMTP (Simple Mail Transfer Protocol) inclut maintenant tous types

Plus en détail

Architectures Web Services RESTful

Architectures Web Services RESTful Architectures Web Services RESTful Alexandre Denis Alexandre.Denis@inria.fr Inria Bordeaux Sud-Ouest France ENSEIRB PG306 REST REST Representational State Transfer Roy Fielding (2000) Décollage vers 2006-2007

Plus en détail

Services réseaux. Protocoles applicatifs. 4. La couche Application. Protocoles applicatifs. Protocoles applicatifs. Les principaux trafics

Services réseaux. Protocoles applicatifs. 4. La couche Application. Protocoles applicatifs. Protocoles applicatifs. Les principaux trafics Services réseaux Protocoles applicatifs Les principaux trafics 4. La couche Application Protocoles applicatifs Service DNS Web et HTTP Messagerie (SMTP, POP, IMAP) Transfert de fichiers (FTP, P2P) Voix

Plus en détail

&DVDEODQFD*18/LQX['D\V. 'pf

&DVDEODQFD*18/LQX['D\V. 'pf &DVDEODQFD*18/LQX['D\V &RQIpUHQFHGH6pFXULWp,QIRUPDWLTXH 'pf (7+,&$/+$&.,1*86,1* 23(16285&(722/6 $IBPT$PNQVUFS$MVC.PSPDDP.PSPDDBO4FDVSJUZ3BEB3 0HPEUH&&&PD 1DELO28&+1 6RPPDLUH ƒ But et mission du CCC.ma

Plus en détail

LA COUCHE APPLICATION EST LA COUCHE FINALE. Elle offre de très très nombreux protocoles.

LA COUCHE APPLICATION EST LA COUCHE FINALE. Elle offre de très très nombreux protocoles. M1 Informatique Réseaux Cours 8 Couche Application Notes de Cours LA COUCHE APPLICATION EST LA COUCHE FINALE. Elle offre de très très nombreux protocoles. Les protocoles que nous allons voir ici sont à

Plus en détail

Architecture Internet et WEB LP Flux numériques

Architecture Internet et WEB LP Flux numériques Architecture Internet et WEB LP Flux numériques Estienne/UPMC Octobre 2011 Internet : réseau de réseaux Répondre au problème de l hétérogénéïté des réseaux physiques. Réseau A: MA1 MA2 MA3...

Plus en détail

16/09/2008. 4 sections de 12 heures Serveurs et outils Installation d un serveur http Configuration d hôtes virtuels Configuration d accés sécurisé

16/09/2008. 4 sections de 12 heures Serveurs et outils Installation d un serveur http Configuration d hôtes virtuels Configuration d accés sécurisé Systèmes & Réseaux Licence Professionnelle Septembre 2008 Stéphane Gaëtan Lavirotte Rey Gaëtan Rey Jean-Yves Tigli Planning du cours 4 sections de 12 heures Serveurs et outils Installation d un serveur

Plus en détail

Architecture distribuée

Architecture distribuée Architecture distribuée Conception et développement d algorithmes distribués pour le moteur Baboukweb Jean-Christophe DALLEAU Département de Mathématiques et Informatique Université de La Réunion 26 juin

Plus en détail

Paramètres HTTP Nom Description Présence Valeurs Défaut nichandle Votre nic-handle Obligatoire. Obligatoire Voir rubrique «hashage password»

Paramètres HTTP Nom Description Présence Valeurs Défaut nichandle Votre nic-handle Obligatoire. Obligatoire Voir rubrique «hashage password» Choix 1 Requête POST/GET (Difficulté : 1/5) Paramètres HTTP Nom Description Présence Valeurs Défaut nichandle Votre nic-handle Obligatoire (manager/espace client) hash Protocole de hashage désiré Obligatoire

Plus en détail

Outils de traitements de logs Apache

Outils de traitements de logs Apache Outils de traitements de logs Apache 1) Anonymisation des logs 2) Outil visuel d'exploration des données 3) Adaptation d'un robot 1 Anonymisation des logs Objectifs : Anonymiser les logs du point de vue

Plus en détail

Techniques de Programmation pour Internet

Techniques de Programmation pour Internet Séance 7 Transactions par CGI Année Spéciale Informatique ENSIMAG 2002-2003 James L. Crowley Anullé Le but de l'exercice est d'introduire un certain nombre de constructions en PERL utiles pour la programmation

Plus en détail

Master1 ère année. Réseaux avancés I. Projet

Master1 ère année. Réseaux avancés I. Projet Master1 ère année Réseaux avancés I Projet Réalisation d un portail captif d accès authentifié à Internet Présentation du projet Le but du projet est de mettre en place un portail captif permettant : à

Plus en détail

Programmation des Sites Web

Programmation des Sites Web Programmation des Sites Web Deuxième Année ENSIMAG ENSIMAG 2000-2001 James L. Crowley Séance 3 20 octobre 2000 Plan : JavaScript...2 Qu'est que Java Script...2 Messages de Alert...4 Fonctions...5 Ouverture

Plus en détail

Web des services : REST

Web des services : REST Web des services : REST author: Pierre-Antoine Champin Date: 2011-2012 Sommaire 1 Introduction 3 2 REST : le style architectural du Web 7 3 REST par l'exemple 16 4 Discussions 47 2011 Pierre-Antoine Champin

Plus en détail

Services réseaux. Protocoles applicatifs. 4. La couche Application. Protocoles applicatifs. Protocoles applicatifs. Les principaux trafics

Services réseaux. Protocoles applicatifs. 4. La couche Application. Protocoles applicatifs. Protocoles applicatifs. Les principaux trafics Services réseaux Protocoles applicatifs Les principaux trafics 4. La couche Application Protocoles applicatifs Service DNS Web et HTTP Messagerie (SMTP, POP, IMAP) Transfert de fichiers (FTP, P2P) Voix

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Couche application. La couche application est la plus élevée du modèle de référence.

Couche application. La couche application est la plus élevée du modèle de référence. Couche application La couche application est la plus élevée du modèle de référence. Elle est la source et la destination finale de toutes les données à transporter. Couche application La couche application

Plus en détail

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs Utilisation des classes de PourCGI par Michel Michaud, version 2002-11-23 Les fichiers PourCGI.h et PourCGI.cpp rendent disponibles deux classes et une fonction libre qui permettent de faire facilement

Plus en détail

Le serveur HTTPd WASD. Jean-François Piéronne

Le serveur HTTPd WASD. Jean-François Piéronne Le serveur HTTPd WASD Jean-François Piéronne Sommaire Caractéristiques Architecture générale Performances Intégration dans OpenVMS Caractéristiques Implémentation complète HTTP/1.0 Méthodes "GET", "HEAD",

Plus en détail

Architecture et Développement Web

Architecture et Développement Web Architecture et Développement Web 1 Les principes du Web Dynamique Les outils et techniques de développement Introduction 2 Présentation du formateur L'objectifs de la formation Les bases du développement

Plus en détail

TP N o 2 - Serveur Apache

TP N o 2 - Serveur Apache IUT de Villetaneuse E. Viennet R&T Module I-C3 Applications Client/Serveur et Web 8/02/06 TP N o 2 - Serveur Apache Ce TP se déroulera avec Linux Red Hat 9 (image GTR-3), en salle de TP réseaux. EXERCICE

Plus en détail

Sécurité des applications Web

Sécurité des applications Web Travail de diplôme Auteur : Professeurs : Expert : Sylvain Maret Stefano Ventura Gérald Litzistorf Yverdon, le 18 décembre 2003 Table des matières 1. Résumé... Page 5 1.1 Problématique... Page 5 1.2 Mandat...

Plus en détail

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France Développement d applications Internet et réseaux avec LabVIEW Alexandre STANURSKI National Instruments France Quelles sont les possibilités? Publication de données Génération de rapports et de documents

Plus en détail

Applications Web et servlets Java

Applications Web et servlets Java Département de génie logiciel et des TI LOG660 - Base de données haute performance Applications Web et servlets Java Application Web Une application Web répartie sur trois couches (three-tier Web application)

Plus en détail

Gestion du Serveur Web

Gestion du Serveur Web Gestion du Serveur Web Console de gestion du Serveur Web Une console de gestion est disponible dans l'outil de l'administrateur. Cette console de gestion vous permet de configurer les services JetClouding

Plus en détail

Technologie des Serveurs Internet. Langage Perl

Technologie des Serveurs Internet. Langage Perl Technologie des Serveurs Internet Jean Denis Girard :: jd.girard@sysnux.pf SysNux BP 110076 98709 Mahina Tahiti Polynésie française http://www.sysnux.pf/ Année 2015 Plan Protocole HTTP Serveur Web (Apache)

Plus en détail

Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test?

Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test? Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC Qui contacter pour commencer la mise en place d une configuration de test? CyberMUT Paiement - Paiement CIC Commerce Electronique mailto:centrecom@e-i.com

Plus en détail

Etude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria

Etude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria Etude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria 1 Philippe Lecler TutoJRES «Sécurité des sites WEB» 4 février 2010 Contexte 2 PCI-DSS : Payment Card Industry Data Security

Plus en détail

Gestion centralisée d un réseau de sites discrets. Nicolas JEAN - @salemioche

Gestion centralisée d un réseau de sites discrets. Nicolas JEAN - @salemioche Gestion centralisée d un réseau de sites discrets Nicolas JEAN - @salemioche SEO / Technique,utilisation SEO Technique / Utilisation Intérêt du réseau Centralisé Discrétion Simplicité d utilisation Caractéristique

Plus en détail

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall Internet DNS World Wide Web Mécanismes de base Exécution d'applications sur le web Divers Proxy, fire-wall 1 Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet

Plus en détail

CEG3585/CEG3555 Tutorat 2. Été 2015

CEG3585/CEG3555 Tutorat 2. Été 2015 CEG3585/CEG3555 Tutorat 2 Été 2015 Architecture TCP/IP Les applications sont développées avec le socket API (en Java les classes Socket et ServerSocket) Adresse socket: Port TCP Adresse IP Les deux adresses

Plus en détail

Web Tier : déploiement de servlets

Web Tier : déploiement de servlets Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation

Plus en détail

Coagul - Installation - Sécurisation Apache2 sur une Debian Sarge.

Coagul - Installation - Sécurisation Apache2 sur une Debian Sarge. 1 sur 5 29/10/2008 15:11 Installation - Sécurisation Apache2 sur une Debian Sarge. - Installation des packages : apt-get install apache2 apt-get install openssl Rubrique : Serveurs Le : samedi 24 décembre

Plus en détail

Activité sur Meteor. Annexe 1 : notion de client-serveur et notion de base de données

Activité sur Meteor. Annexe 1 : notion de client-serveur et notion de base de données Activité sur Meteor Annexe 1 : notion de client-serveur et notion de base de données Notion de client-serveur Que se passe-t-il lorsque vous tapez dans la barre d'adresse de votre navigateur «http://www.google.fr»?

Plus en détail

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. ASTRIUM - Toulouse JEE Formation 2013 TP JEE Développement Web en Java Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. Figure 1 Architecture

Plus en détail

Couche applica,on. h.p- web Cgi javascript

Couche applica,on. h.p- web Cgi javascript Couche applica,on h.p- web Cgi javascript Couche application Présentation générale: v Modèle des services de la couche transport v Modèle clientserveur v Modèle pair-à-pair Socket: UDP TCP Protocoles v

Plus en détail

Chapitre : Les Protocoles

Chapitre : Les Protocoles Chapitre : Les Protocoles Outils de l Internet Joyce El Haddad DU1 MI2E Université Paris Dauphine 2009-2010 1 Plan 1. Le modèle TCP/IP 2. Les adresses IP 3. Le Protocole IP 4. Le Protocole TCP 5. Les Protocoles

Plus en détail

Projet de programmation (IK3) : TP n 1 Correction

Projet de programmation (IK3) : TP n 1 Correction Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public

Plus en détail

SERVEUR HTTP Administration d apache

SERVEUR HTTP Administration d apache 1 SERVEUR HTTP Administration d apache PLAN Introduction: Présentation HTTP; Installation et configuration d apache; VirtualHosts; Aliasing; Limitation d accès. 2 PROTOCOLE HTTP PRÉSENTATION HTTP : HyperText

Plus en détail

Sécuriser les applications web de l entreprise

Sécuriser les applications web de l entreprise LABORATOIRE SECURITE Sécuriser les applications web de l entreprise Mise en place de ModSecurity pour Apache Julien SIMON - 61131 Sommaire Présentation de la situation actuelle...3 Qu est ce qu un WAF?...5

Plus en détail

TP Réseaux. Conception d'une zone démilitarisée (DeMilitarized Zone : DMZ)

TP Réseaux. Conception d'une zone démilitarisée (DeMilitarized Zone : DMZ) TP Réseaux Conception d'une zone démilitarisée (DeMilitarized Zone : DMZ) Préambule Nous devons concevoir une zone démilitarisée, c'est à dire une configuration réseau qui permet d'isoler un ensemble de

Plus en détail

CGI et SSI. La programmation CGI. Sources. Objectifs. Qu'est ce qu'un programme CGI? CGI

CGI et SSI. La programmation CGI. Sources. Objectifs. Qu'est ce qu'un programme CGI? CGI Sources CGI et SSI Supports de cours de Olivier Glück (Lyon 1) Livres cités en bibliographie Le web Sylvain Brandel Sylvain.brandel@liris.univ-lyon1.fr http://bat710.univ-lyon1.fr/~sbrandel M1 Informatique

Plus en détail

Documents web dynamiques. 20 novembre 2007 Architecture Multi-Niveaux 54

Documents web dynamiques. 20 novembre 2007 Architecture Multi-Niveaux 54 Documents web dynamiques 20 novembre 2007 Architecture Multi-Niveaux 54 Documents web dynamiques Contenu Statique Le client envoie une requête avec un nom de fichier Le serveur répond en lui retournant

Plus en détail

Manuel d'installation

Manuel d'installation CyberMUT P@iement P@iement CIC P@iement OBC SERVICE SECURISE DE PAIEMENT INTERNET PAR CARTE BANCAIRE (Sécurisé par le protocole SSL) Manuel d'installation (Document 2/2) EURO Sp.Tech. 1.2.8 Octobre 2001

Plus en détail

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web PHP & Bases de données La quantité de données utilisée par certains sites web nécessite l'utilisation d'une base de données Il faut donc disposer d'un SGBD (mysql, postgresql, oracle, ) installé sur un

Plus en détail

Applications TCP/IP. Protocoles applicatifs Répartition du trafic sur Internet. 3. La couche Application

Applications TCP/IP. Protocoles applicatifs Répartition du trafic sur Internet. 3. La couche Application Applications TCP/IP Protocoles applicatifs Répartition du trafic sur Internet 3. La couche Application Protocoles applicatifs Service DNS Web et HTTP Messagerie (SMTP, POP, IMAP) Transfert de fichiers

Plus en détail

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB Installation et administration d un serveur web Module 25793 TP A5 (1/2 valeur) Chapitre 1 Fonctionnalités d un serveur web, le protocole

Plus en détail

Tarak CHAARI Application Web en Java ISECS 2

Tarak CHAARI Application Web en Java ISECS 2 Programmation d Application Web avec Java Tarak CHAARI Tarak.chaari@isecs.rnu.tn Université de Sfax, 2009-20102010 Tarak CHAARI Application Web en Java Version adaptée ISECS du cours de Mr Walid MAHDI

Plus en détail

Technologies du Web. Technologies côté serveur. Pierre Senellart. Page 1 / 53 Licence de droits d usage

Technologies du Web. Technologies côté serveur. Pierre Senellart. Page 1 / 53 Licence de droits d usage Technologies du Web Technologies côté serveur Page 1 / 53 Plan HTTP Langages côté serveur Un exemple : PHP Introduction aux bases de données Outils et références Page 2 / 53 Document License HTTP (HyperText

Plus en détail

Expressions communes. Détection du type de navigateur

Expressions communes. Détection du type de navigateur 2 Expressions communes Certaines tâches JavaScript récurrentes doivent être réalisées quasiment chaque jour. Elles sont à la base de nombreuses applications JavaScript mais n entrent dans aucune catégorie

Plus en détail