Les serveurs WEB Une introduction - LITIS

Transcription

Les serveurs WEB Une introduction - LITIS
Les serveurs WEB
Une introduction
Claude Duvallet
Université du Havre
UFR Sciences et Techniques
25 rue Philippe Lebon - BP 540
76058 LE HAVRE CEDEX
[email protected]
Claude Duvallet — 1/22
Les serveurs WEBUne introduction
Comparaison des serveurs WEB (1)
Répartition des parts de marché :
Microsoft IIS : 30 %
Apache HTTP server : 60 %
ZEUS : 1,4 %
Informations pratiques :
Apache :
Prix : 0 euros
Compatibilité : Linux, Windows 98 à XP, de nombreux Unix,MacOS
X
site : http ://www.apache.org/
Microsoft IIS :
Prix : inclus dans Windows 2000 Serveur
Compatibilité : Windows 2000 Serveur
site : http ://www.microsoft.com/france/
ZEUS :
Prix : 1900 euros
Compatibilité : Linux, de nombreux Unix,MacOS X
site : http ://www.zeus.com/products/zws/
Claude Duvallet — 2/22
Les serveurs WEBUne introduction
Comparaison des serveurs WEB (2)
Apache :
les points forts :
Gratuité,
Peu gourmand en ressources matérielles,
Excellente stabilité.
les points faibles :
Installation et administration plus laborieuse (pas d’interface
graphique),
Pas de support technique.
Microsoft IIS :
les points forts :
Grande simplicité d’installation et d’administration.
les points faibles :
Coût du support technique,
très gourmand en ressources matérielles.
Claude Duvallet — 3/22
Les serveurs WEBUne introduction
Comparaison des serveurs WEB (3)
Zeus :
les points forts :
Peu gourmand en ressource matérielles,
Excellente stabilité,
Capacité à tenir de très gros pics de fréquentation,
Interface native avec certaines bases de données.
les points faibles :
Coût de la licence (1700 Euros),
Coût du support technique.
Claude Duvallet — 4/22
Les serveurs WEBUne introduction
Internet Information Server
Claude Duvallet — 5/22
Les serveurs WEBUne introduction
Configuration de Microsoft IIS (1)
Utilisation de Microsoft Management Console (MMC).
Lancement de l’outil de configuration : ouvrir le fichier
C:\WINNT\system32\inetsrv\iis.msc
Il s’agit d’un petit fichier de configuration (5 à 10 Ko) donc
facilement transportable d’un environnement à un autre.
Configuration de IIS au format HTML :
Il existe un équivalant à l’interface MMC.
L’adresse d’administration HTML est la suivante :
http://localhost:xxxx/iisadmin/default.asp
xxxx désigne le numéro de port TCP lié au site WEB
d’administration, il est définit aléatoirement lors de l’installation de
IIS.
Espace de stockage par défaut des fichiers du site WEB :
c:\inetpub\wwwroot
Claude Duvallet — 6/22
Les serveurs WEBUne introduction
Configuration de Microsoft IIS (2)
Claude Duvallet — 7/22
Les serveurs WEBUne introduction
Configuration de Microsoft IIS (3)
Claude Duvallet — 8/22
Les serveurs WEBUne introduction
Configuration de Microsoft IIS (4)
Claude Duvallet — 9/22
Les serveurs WEBUne introduction
Configuration de Microsoft IIS (5)
Claude Duvallet — 10/22
Les serveurs WEBUne introduction
Création de répertoire virtuel
Permet de définir un alias entre le chemin présenté au client
WEB et l’emplacement réel du contenu.
L’emplacement physique peut être :
un autre répertoire situé sur le serveur à un emplacement
différent ou sur un autre disque du serveur,
un partage situé sur un autre ordinateur du réseau local (nom
netbios + partage),
une redirection vers une autre adresse HTTP.
Dans MMC, cela se fait au moyen d’un assistant.
Comme pour tout répertoire du site WEB on peut définir des
droits d’accès (écriture, lecture, exécution de scipt, autoriser
l’exploration de répertoire).
Claude Duvallet — 11/22
Les serveurs WEBUne introduction
APACHE
Claude Duvallet — 12/22
Les serveurs WEBUne introduction
La commande “apachectl”
l’option start : lance le démon httpd
l’option stop : arrête httpd
l’option restart : relance httpd en envoyant un signal SIGHUP
l’option fullstatus : permet d’obtenir le descriptif de l’état du
serveur
l’option status : ...
l’option graceful : effectue un redémarrage complet en envoyant
un signal SIGUSR1
l’option configtest : effectue un test de la syntaxe de configuration
l’option help : fournit une aide sur les options
Claude Duvallet — 13/22
Les serveurs WEBUne introduction
La configuration du serveur Apache (1)
Chargement et activation des modules, exemple :
LoadModule php4_module /usr/lib/apache/1.3/libphp4.so
DocumentRoot /home/httpd/html permet de spécifier
l’endroit où se trouve les pages WEB du serveur.
UserDir html permet de spécifier l’emplacement des pages
des utilisateurs lorsque l’on tape, par exemple
http ://localhost/∼duvallet/
Listen 3000/Listen 12.34.56.78 :80 permet de spécifier
une adresse et/ou un numéro de port supplémentaire.
Claude Duvallet — 14/22
Les serveurs WEBUne introduction
La configuration du serveur Apache (2)
DirectoryIndex index.html index.htm index.shtml
index.cgi permet de spécifier les fichiers par défaut qui
peuvent être lus par Apache.
La gestion des alias : Alias NomRacourci NomRéel permet de
définir des racourcis, notamment au niveau des chemins d’accès.
ServerAdmin [email protected] permet
de spécifier l’adresse mail du webmaster.
ServerRoot /home/httpd permet de spécifier le répertoire de
base de Apache.
Claude Duvallet — 15/22
Les serveurs WEBUne introduction
Contrôler les accès
On doit pouvoir contrôler les accès aux différentes parties du
serveur.
Section <Directory /home/httpd/html/> </directory>
Commande “order, allow, deny”
Deux possibilités :
Order deny, allow
Order allow, deny
Autoriser un accès : allow
Interdire un accès : deny
Claude Duvallet — 16/22
Les serveurs WEBUne introduction
Autoriser uniquement depuis une classe IP
Ceci permet notamment de créer des intranet.
<Directory /home/httpd/html/intra/>
order deny,allow
deny from all
allow from 193.52.167.
</Directory>
Exemple : http ://janeway.univ-lehavre.fr/intra ne sera
autoriser que pour la classe C 193.52.167.*
Claude Duvallet — 17/22
Les serveurs WEBUne introduction
Autoriser uniquement depuis un domaine
Il s’agit du même principe que précédemment, on remplace la
spécification d’adresses IP par un nom de domaine.
<Directory /home/httpd/html/intra/>
order deny, allow
deny from all
allow from .univ-lehavre.fr
</Directory>
Claude Duvallet — 18/22
Les serveurs WEBUne introduction
Création d’un serveur virtuel
<VirtualHost ip.address.of.host.some_domain.com>
ServerAdmin [email protected]_domain.com
DocumentRoot /www/docs/host.some_domain.com
ServerName host.some_domain.com
ErrorLog logs/host.some_domain.com-error.log
CustomLog logs/host.some_domain.com-access.log common
</VirtualHost>
Claude Duvallet — 19/22
Les serveurs WEBUne introduction
inetd, le super-serveur réseau
Il s’agit du démon internet qui écoute plusieurs ports différents et
lance des programmes en fonction des connexions reçues,
exemples :
ftpd qui permet d’utiliser le service ftp,
telnetd qui permet d’utiliser le service telnet.
Apache peut être soit indépendant soit invoqué par inetd : pour
cela, il existe une instruction de configuration : ServerType
ServerType standalone permet de spécifier que le server
WEB tournera sur un démon indépendant (httpd).
Claude Duvallet — 20/22
Les serveurs WEBUne introduction
Configuration de PHP sous Apache
Les lignes suivantes doivent être rajoutées (décommentées)
dans httpd.conf, une fois que PHP et Apache sont installés.
AddType application/x-httpd-php .phtml .php
AddType application/x-httpd-php-source .phps
Il faut aussi modifié la ligne :
DirectoryIndex index.html index.htm index.shtml
index.cgi index.php
Claude Duvallet — 21/22
Les serveurs WEBUne introduction
Tester la configuration PHP
Un fichier contenant du code PHP doit avoir pour extension soit
.phtml, soit .php
Un code PHP doit être inséré entre des TAG particuliers, il existe
plusieurs possibilités :
1
entre “ <?00 et “? >00
2
entre “ <?php00 et “? >00
3
entre “ <SCRIPT LANGUAGE=”php” >00 et </SCRIPT>
4
entre 00 < %00 et 00 % >00 (cette syntaxe est désactivée par défaut)
Un exemple de fichier contenant du code PHP
<?php
echo "Bonjour !\n";
echo "Bienvenue dans la programmation de
sites WEB dynamiques\n";
?>
Le même exemple écrit différemment
<SCRIPT LANGUAGE="php">
echo "Bonjour !\n";
echo "Bienvenue dans la programmation de
sites WEB dynamiques\n";
</SCRIPT>
Claude Duvallet — 22/22
Les serveurs WEBUne introduction