World Wide Web
- 1990-92 Tim Berners-Lee (CERN) et le NCSA
- 1994- Mark Andreesen (Netscape)
- 1995- Microsoft Internet Explorer ...nostalgie des vieux
browsers (musée) www.dejavu.org http://browsers.evolt.org
- 1999- Adoption de XML
Qu'est-ce que le web
- Un langage de représentation de documents: HTML (XHTML)
- un protocole réseau: HTTP
- un organisme de normalisation: Consortium
W3
Panorama des serveurs
- Historique: NCSA
- Logiciel le plus utilisé: Apache Ressources
pour instancier et configurer ses propres serveurs Apache et MySQL
- Ses challengers commerciaux: MS IIS et Netscape
- De nombreux serveurs indépendants
Comment ça marche ?
Un programme ou processus (httpd) installé sur une machine
multi-tâche quelconque traite des requêtes venant de clients situés n'importe où sur
Internet
L'unité d'information est le document
Document: tout type de texte (ASCII ou formatté), images
(fixes ou animées), sons, et liens vers d'autres documents identifiés par un URL
Pour traiter des transactions HTTP
une requête = méthode + path + version du protocole
ex: GET /pasteur/index.html HTTP/1.0
Une réponse: code HTTP, en-tête MIME + données
HTTP/1.0 200 OK Content-type: text/html [.../...]
Autres protocoles
Le serveur sait relayer des requêtes pour un autre service:
- ftp, gopher, wais
- https, (proxy, sert aussi pour http)
Ne pas confondre avec les services supplémentaires du
navigateur (mail, news, telnet,...)
Rappel: format des URL
- Un préfixe indiquant la méthode d'accès, suivi d'un
délimiteur
- un nom de machine associé s'il le faut à un port
- un nom de fichier (ou autre chose) selon la méthode d'accès
Exemple: http://www.pasteur.fr/pasteur/bioterrorisme.html
Exemples
- ftp://ftp.pasteur.fr//pub/antivirus
- https://www.jres.org/
- news:news.answers
- telnet:central.pasteur.fr
Page dynamique vs page statique
Administration des pages dynamiques
Sur le serveur, une arborescence centralise les scripts
utilisables
Appelée cgi-bin Common Gateway Interface (pour du code
PERL) ou PHP3 (ou PHP4), c'est une interface commune aux applications via le web
Nécessite un contrôle accru car vu du serveur web, ces
programmes sont déclenchées par un événement extérieur au serveur (sur le client)
Pages animées
Envoi d'un programme au logiciel client destiné à créer
des pages animées
- utilisant un langage universel (Java) dans une machine
virtuelle
- utilisant un interpréteur spécifique (JavaScript, ActiveX du
langage MS VB (technologie ASP))
- donnent du boulot veille technologique en plus
Cas de Java
basé sur le concept de machine virtuelle
orienté pogrammation objet
nouvelle technologie inventée par Sun dans un but de
portabilité et adoptée par la communauté du Web (donc ouvert aux bugs...)
ActiveX et Javascript
ActiveX est à Java ce que NetBIOS est à TCP/IP:
l'implémentation par Microsoft d'un produit rendant les mêmes services
Javascript est la même chose, mais fait par Netscape
Avantages: exploitation optimale des outils de la plate-forme
client, développement spectaculaire d'outils simples
Inconvénients: failles de sécurité, manque d'ouverture
Administration d'un site web: serveur/contenu/sécurité
- Le serveur demande des compétences techniques; souvent c'est
un Admin Réseau ou Admin Système
- Le contenu demande des compétences en communication et en
graphisme
Dans un établissement non technique, confier l'administration du contenu à
l'informaticien est au pire une erreur et au moins une provocation (vis-à-vis du reste de
l'entreprise)
- Sécurité
Administration du serveur
- Administration courante de service réseau (configuration,
comptabilité, statistiques). C'est inclus dans le logiciel serveur
- Contrôle de la disponibilité du serveur en interne et depuis
l'extérieur
- Assure la coordination avec les autres services réseaux:
mail, news, ftp, mais aussi serveurs NFS (pour les pages personelles), et les
sauvegardes...
- S'occupe le moins possible du contenu, dont il ne connait que
les informations suffisantes pour vérifier son fonctionnement
- sous l'autorité du DG
Administrateur du contenu
- suit la politique de communication de l'entreprise: charte graphique, ligne
éditoriale...
- définit le contenu des pages et les services mis à la
disposition des publics (annuaire, magasin, publicité, pages personelles...)
- assure la pérennité des informations
- contrôle le contenu des pages personelles
- entreprend les démarches légales
- référencer, affilier le site
- sous l'autorité du Dir Communication
Sécurité
- La sécurité est l'affaire de tous, quotidiennement
- Pour des raisons techniques, elle est souvent confiée à
l'administrateur système, alors que celui-ci est juge et partie
- Ça ne peut en tous cas pas être une initiative des
administrateurs
- Les systèmes d'information répartis créent de nouveaux
problèmes pas forcément techniques qui concernent plutôt l'administrateur de contenu
Sécurité du contenu
Beaucoup de problèmes associés à la technologie Internet
sont liés aux législations différentes d'un pays à un autre:
Internet n'est pas une zone de non-droit, la loi s'y applique
- copyright, exception française du droit d'auteur
- CNIL (spécifique à France/Europe)
- pornographie, pédophilie
- révisionisme
- chiffrement
Sécurité système, robustesse des sytèmes
L'administrateur système garantit la disponibilité,
l'intégrité et de la confidentialité du contenu
WWW est un service de plus à administrer, surveiller,
contrôler...
C'est parfois le seul service en ligne de l'établissement;
il pose des problèmes nouveaux de garantie de service, surtout quand il
sert de vitrine à l'établissement
WWW est un nouveau support de diffusion de programmes, donc
de virus.
Trucs et Outils
Mettre en place un serveur de mises à jour en interne,
différent du serveur officiel, et assurer une mise en ligne différée avec un outil
comme rsync ou webcopy.
Installer un serveur-relais qui centralise les requêtes pour
les enregistrer et/ou les contrôler. Peut aussi améliorer sensiblement les performances.
Distribuer aux utilisateurs une configuration
sécurisée des clients (Netscape et IE). Ils ne s'apercevront souvent de rien,
car les bons services, pour rester compatibles avec tous les clients, n'exploitent pas les
fonctionnalités bizarres.
Les opérations qui suivent sont à faire de concert avec
l'administrateur de contenu:
- Interroger régulièrement les moteurs de recherche pour
savoir «qui a un pointeur vers mon site ?» indice de popularité
- Gérer cette liste et tenir au courant les administrateurs de
ces sites en cas de modification majeure
- Réciproquement, informer les administrateurs des sites vers
lesquels des liens ont été tirés de cet état de fait
- Le dialogue entre les administrateurs fait partie de la
culture d'Internet.
Install Apache
- Disponible en source ou sous forme de package pour Unix (.RPM
ou . tgz) ou Windows (.zip)
- Documentation jointe au format HTML
- Options proposées sous formes de modules séléctionnables à
l'installation; certaines peuvent demander un peu de technique: PHP, SSL, ...
- version courante 1.3.20
Configuration Apache
Tout est réuni dans un fichier httpd.conf
- Noms du serveur, réels et virtuels
- Emplacement des documents, protection
- Proxy/cache
- Quelques exemples dans le TP
Configuration squid
Squid est le logiciel de proxy/cache installé à Pasteur, il
tient lieu de lui configurer:
- Le lieu et la durée de rétention des documents
- serveurs pères et frères et les ports correspondants
- contrôle des connexions et traitement des logs
- configuration du client en conséquence
Liens contextuels