LP Web TP1 IDSE PDF
LP Web TP1 IDSE PDF
LP Web TP1 IDSE PDF
Cours/TP n 1
G. Rey
2014-2015
Installation et configuration
dun serveur web
1 Prsentation Gnrale
Les cours Web de cette anne auront pour objectifs principaux de vous faire dcouvrir ou redcouvrir un large
ventail de technologies utilises dans les diffrentes tapes de la conception dun site web. Pour ce faire, nous
nous placerons dans le cadre dun particulier (ou dune PME) qui souhaite hberger lui-mme son site web ainsi
que diffrents outils largement utilis de nos jours. Pour cela, le cours sera organis selon 3 parties. Les 3 parties
seront les suivantes :
2 Introduction
Les objectifs de ce TP sont de vous montrer comment installer et configurer un serveur web. Nous verrons dans un
premier temps la configuration dun serveur Apache sur un systme Debian 7 server puis la configuration de
divers outils pour terminer par la configuration du serveur IIS de Microsoft sur un systme Windows 7.
2.1 Le rendu
Vous devrez en fin de sance rendre un compte rendu de votre TP. Ce compte rendu devra OBLIGATOIREMENT
respecter les contraintes suivantes :
Contenir dans le corps de lemail les questions que vous pourriez avoir (si vous souhaitez avoir une
rponse rapide car les comptes rendu ne sont pas valus immdiatement).
Contenir en attachement 1 seul fichier .zip, .7z ou .tar.gz contenant lui-mme 1 fichier de compte rendu (au
format pdf, rtf, doc, docx ou txt) ainsi que les divers fichiers (fichiers de configuration, pages (x)html, CSS,
php) crits dans le TP. Ne pas joindre de fichiers excutables.
loadkeys fr : passe le clavier en franais (fr) (ncessite les droits dadministration du systme).
Attention, ne pas arrter le serveur virtuel, car vous ne pourrez pas le redmarrer.
Pour faire simple dans un premier temps, nous allons installer notre serveur apache http en utilisant les paquets
Debian. Nous verrons plus tard, comment faire cette installation la main.
Nous pouvons commencer installer le serveur http Apache. Nous utiliserons ici la version 2.2 du serveur. Il est
possible que la version dploye par le systme de paquets soit plus ancienne que celle disponible sur le site de la
fondation apache. Nous verrons dans la suite de ce cours/TP comment installer directement la version de notre
choix.
> apt-get install apache2
ou
> aptitude install apache2
Regardez la liste des packages installs ou mis jour. Certains packages dj installs seront galement mis jour.
Il est important de bien comprendre que cela peut avoir un impact sur votre systme.
Si aucune nerreur nest signale, linstallation dApache est termine.
Avant toute chose, notez la liste des modules activs par linstallation par dfaut.
Quelle est la version de HTTP apache 2 qui a t install sur votre systme ?
Bravo, vous venez de finir linstallation de votre serveur http apache sous linux. Maintenant nous allons voir
comment configurer celui-ci pour quil rponde correctement nos besoins.
3.1.1 Arrt et redmarrage
Tout au long de ce cours/TP nous aurons besoin darrter et de redmarrer notre serveur http apache pour tester
ces diffrentes fonctionnalits. Voici donc rapidement les diffrentes commandes permettant de faire cela.
Attention, il est possible que vous ayez besoin des droits dadministrateur pour ces commandes. Dans ce cas,
pensez vous connecter sur le compte root.
Dmarrage normal
Dmarre normalement le processus daemon httpd (apache2 dans notre cas).
> apache2ctl -k start
Arrter immdiatement
L'envoi du signal stop au processus parent induit chez celui-ci une tentative immdiate de tuer tous ses processus
enfants. Cela peut durer plusieurs secondes. Aprs cela, le processus parent lui-mme se termine. Toutes les
requtes en cours sont termines, et plus aucune autre n'est traite.
> apache2ctl -k stop
Arrt en douceur
L'envoi du signal graceful-stop au processus parent lui fait aviser les processus enfants de s'arrter aprs le
traitement de leur requte en cours (ou de s'arrter immdiatement s'ils n'ont plus de requte traiter). Le
processus parent va alors supprimer son fichier PidFile et cesser l'coute de tous ses ports. Le processus parent va
continuer s'excuter, et va surveiller les processus enfants qui ont encore des requtes traiter. Lorsque tous les
processus enfants ont termin leurs traitements et se sont arrts ou lorsque le dlai spcifi par la directive
GracefulShutdownTimeout a t atteint, le processus parent s'arrtera son tour. Si ce dlai est atteint, tout
processus enfant encore en cours d'excution se verra envoyer le signal stop afin de le forcer s'arrter.
Redmarrer immdiatement
L'envoi du signal restart au processus parent lui fait tuer ses processus enfants comme pour le signal stop, mais le
processus parent ne se termine pas. Il relit ses fichiers de configuration, et rouvre ses fichiers de log. Puis il donne
naissance un nouveau jeu de processus enfants et continue de traiter les requtes.
> apache2ctl -k restart
Redmarrage en douceur
L'envoi du signal graceful au processus parent lui fait envoyer aux processus enfants l'ordre de se terminer une fois
leur requte courante traite (ou de se terminer immdiatement s'ils n'ont plus rien traiter). Le processus parent
relit ses fichiers de configuration et rouvre ses fichiers de log. Chaque fois qu'un enfant s'teint, le processus parent
le remplace par un processus enfant de la nouvelle gnration de la configuration, et celui-ci commence
immdiatement traiter les nouvelles requtes.
> apache2ctl -k graceful
Lutilisation de ce script garanti le bon fonctionnement du systme et des commandes (vrifications des variables
denvironnements, ).
Vrifier ce que fait ce script et regardez sil sappuie sur les commandes prsentes plus haut :
1. En comparant leffet des commandes standards et celles du script. Vous pourrez par exemple utiliser la
combinaison des commandes ps et grep pour vrifier larrt et le redmarrage du serveur.
2. En regardant le code du script directement.
De manire gnrale, il est conseill de faire une copie de sauvegarde des fichiers avant toutes modifications. Par la
suite, dans ce cours/TP, nous ne vous rappellerons pas chaque fois de faire une sauvegarde des fichiers que nous
modifierons. Pensez-y ou vous risquez de devoir reprendre le TP depuis le dbut.
3.2.1 Syntaxe des fichiers de configuration
Les fichiers de configurations (httpd.conf, apache2.conf, ) contiennent deux types d'informations : des
commentaires et des directives pour le serveur. Les lignes commenant par le caractre # sont traites comme des
lignes de commentaires; ces commentaires n'ont aucune utilit pour le logiciel du serveur, mais ils servent de
documentation pour l'administrateur du serveur. Vous pouvez ajouter autant de commentaires que vous voulez; le
3.2.2 Modules
Apache est un serveur modulaire. Ceci implique que seules les fonctionnalits les plus courantes sont incluses dans
le serveur de base. Les fonctionnalits tendues sont fournies l'aide de modules qui peuvent tre chargs dans
Apache. Par dfaut, un jeu de modules de base est inclus dans le serveur la compilation. Si le serveur est compil
de faon utiliser les modules chargs dynamiquement, alors les modules peuvent tre compils sparment et
chargs n'importe quel moment l'aide de la directive LoadModule. Dans le cas contraire, Apache doit tre
recompil pour ajouter ou supprimer des modules. Les directives de configuration peuvent tre incluses de
manire conditionnelle selon la prsence ou l'absence d'un module particulier en les plaant dans un bloc
<IfModule>.
Vrifiez les modules qui ont t compils avec le serveur avec la commande suivante :
> apache2ctl -l
Voici un exemple de fichier apache.conf auquel nous avons retir, en grande partie, les commentaires pour des
questions de lisibilit.
# Global configuration
#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
# Do NOT add a slash at the end of the directory path.
#ServerRoot "/etc/apache2"
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
LockFile ${APACHE_LOCK_DIR}/accept.lock
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
PidFile ${APACHE_PID_FILE}
# Timeout: The number of seconds before receives and sends time out.
Timeout 300
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
KeepAlive On
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\""
vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
# Include of directories ignores editors' and dpkg's backup files,
# see the comments above for details.
# Include generic snippets of statements
Include conf.d/
# Include the virtual host configurations:
Include sites-enabled/
Examinez votre propre fichier de configuration et essayez de comprendre par vous-mme (sans lire la suite de ce
cours ni chercher des informations sur le net) lensemble des directives prsentes. Quand vous pensez avoir
compris, essayez de rpondre aux questions ci-dessous.
Vrifiez si le numro du processus linux du dmon httpd (apache2 dans notre cas) contenu dans le fichier
apache.pid correspond bien au premier processus apache2.
Combien y a-t-il de processus apache2 actuellement fonctionnel ?
Que se passe-t-il sur les numros des processus apache2 aprs lexcution dune commande de
redmarrage ? Vous vrifiez notamment si les commandes apache2ctl k restart et
/etc/init.d/apache2 restart ont le mme effet sur le serveur apache httpd.
Vrifiez dans le fichier le nom dutilisateur et du groupe d'apache.
Que contiennent les rpertoires /etc/apache/mods-available, /etc/apache/mods-enabled, /etc/apache/ sites
- available et /etc/apache/sites-enabled ?
Nous allons maintenant utiliser la directive DirectoryIndex pour spcifier quel fichier doit tre lu si aucun nest
dfini par la requte http. Si le module dir na pas t install au dbut, activez le module dir laide dune des
mthodes suivantes (classes de la moins bonne la plus correcte)
copiez les fichiers dir.conf et dir.load situs dans /etc/apache2/mods-available/dans /etc/apache2/modsenabled/.
Faire un lien symbolique des fichiers dir.conf et dir.load situs dans /etc/apache2/mods-available/vers
/etc/apache2/mods-enabled/.
Utiliser la commande apache2 a2enmod pour activer le module (la commande a2dismod permet de
dsactiver un module):
> a2enmod dir
Modifier la ligne suivante dans votre fichier dir.conf puis redmarrer le serveur http.
DirectoryIndex index.htm index.html index.php
De manire gnrale, si on veut quune modification effectue dans un des fichiers de /etc/apache2 soit
prise en compte, il faut redmarrer le serveur web.
Consulter ladresse suivante http://xxx.xxx.xxx.xxx/ (IP de votre serveur) depuis votre navigateur prfr.
Puisque aucune page index.htm nexiste de /var/www/ (rpertoire actuellement dfini pas dfaut), cest le fichier
index.html qui est lu. Crez le fichier index.htm suivant dans /var/www/ :
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Ma page index.htm</title>
</head>
<body>
<p>Ma page index.htm</p>
</body>
</html>
Sans redmarrer le serveur, rechargez votre page web (reconsulter ladresse suivante http://xxx.xxx.xxx.xxx/ (IP de
votre serveur) depuis votre navigateur prfr). Normalement cest votre page index.htm qui devrait tre affiche.
Attention, des fois la page est en cache dans votre navigateur, donc il faut forcer le rechargement.
Par exemple, notre utilisateur student aura un espace priv (public_html par exemple) sur son homedir
(/home/student/) qui sera accessible via lurl http://xxx.xxx.xxx.xxx/~student / (avec lIP de votre serveur).
Commencez par crer un rpertoire public_html dans le homedir de student (attention, de bien faire cela depuis le
compte student et non le compte root).
Pour passer facilement sous le compte student, utilisez la commande suivante :
> su student
Revenez sous le compte root. Il vous reste installer le module userdir (de la mme manire que pour le module
dir) et enfin de redmarrer le serveur http. Le paramtrage se fait dans le fichier userdir.conf.
UserDir public_html
Comme la requte nest pas valide nous devrions avoir une erreur. Mais le serveur nous retourne normalement la
page web sans rien dautre. Ecrivons maintenant une requte http valide la plus simple possible. Pour rappel, une
requte doit avoir la forme suivante (les informations en [] sont facultatives) :
La requte la plus simple est donc la suivante (noubliez pas la ligne vide):
GET / HTTP/1.0
Vrifiez que vous obtenez bien quelque chose comme cela pour un fichier xhtml:
HTTP/1.1 200 OK
Date: Tue, 20 Aug 2013 13:18:06 GMT
Server: Apache/2.2.22 (Debian)
Vary: Accept-Encoding
Content-Length: 51
Connection: close
Content-Type: application/xhtml+xml
<html><body><h1>It works! xhtml</h1></body></html>
Faites la mme requte avec votre navigateur web, observez-vous une diffrence ?
http://xxx.xxx.xxx.xxx/tyuio
Certains anciens navigateurs ne sont pas compatibles avec les serveurs virtuels par nom, car pour
fonctionner, un client doit transmettre un champ d'en-tte HTTP Host. Cet en-tte est exig pour
HTTP/1.1, et peut tre implment sur des navigateurs modernes HTTP/1.0 grce une extension.
L'hbergement virtuel par nom ne peut pas tre utilis avec des serveurs scuriss SSL cause de la nature
mme du protocole SSL.
Certains systmes d'exploitation et quipements rseaux emploient des techniques de gestion de la bande
passante qui ne peuvent pas diffrencier des domaines autrement que par des adresses IP spares.
Dans notre cas, nous nous intresserons, dans ce cours/TPs, uniquement aux serveurs virtuels par nom. Nous
avons deux solutions pour mettre ceux-ci en place :
Solution 1 : modification du fichier hosts (ncessite les droits administrateurs)
Puisque nous navons pas de nom de domaine affecter notre serveur, nous allons devoir lgrement tricher pour
mettre en uvre plusieurs serveurs virtuels par nom et pouvoir observer le rsultat.
Ajoutez les lignes suivantes dans le fichier c:\windows\system32\drivers\etc\hosts de Windows :
xxx.xxx.xxx.xxx www.iut-nice1.fr
xxx.xxx.xxx.xxx www.iut-nice2.fr
Bien sr vous remplacerez les xxx.xxx.xxx.xxx par ladresse ip de votre serveur http. Maintenant ouvrez la page
http://www.iut-nice1.fr/ vous devriez tomber sur votre serveur http (de mme avec http://www.iut-nice2.fr/). Le
fichier host que nous venons de configurer sert Windows de DNS . Sil y trouve le nom de domaine recherch,
il utilise ladresse IP spcifie en face, sinon il fait une requte DNS. Donc maintenant nous avons bien 2 noms de
domaines utilisables.
Pensez bien supprimer ces lignes dans le fichier host avant de quitter la salle, sans quoi ces noms de
domaines seront bloqus.
Solution 2 : utiliser un service de DNS gratuit
Le but de cette manipulation est de crer deux noms de domaines (en fait on ne pourra crer que des noms de
sous-domaines). Pour cela on utilisera le service DynDns (analogie de DNS Dynamique), qui permet aux
particuliers et aux entreprises d'hberger leurs applications internet (web, ftp, mail, ldap, bases de donnes, )
chez eux sans faire appel aux services des hbergeurs internet.
Rendez-vous sur http://www.dnsdynamic.org/ pour y crer deux Free Domain Name :
iut-nice1-prenom-nom.dnsd.me
iut-nice2-prenom-nom.dnsd.me
Il vous faudra vous crer un compte, puis modifier ladresse IP associ au hostname en remplaant celle existante
par ladresse IP de votre machine virtuelle. Une fois lopration faite, patientez quelques minutes que le dns soit
mis jour puis ouvrez la page http://iut-nice1-prenom-nom.dnsd.me/ vous devriez tomber sur votre serveur http
(de mme avec http://iut-nice2-prenom-nom.dnsd.me/). Donc maintenant nous avons bien 2 noms de domaines
utilisables.
Pensez bien supprimer ces deux hostnames la fin de ce cours, sans quoi ces noms de domaines seront
bloqus.
Attention, dans la suite de ce cours/TP, on fait lhypothse que vous avez utilisez la solution 1. Si ce nest pas le cas,
adaptez lnoncer avec les noms des domaines que vous avez cr.
13
La directive VirtualHost
<VirtualHost> et </VirtualHost> sont utiliss pour encapsuler un groupe de directives qui ne seront appliqus qu
lhte virtuel quelles dfinissent. On spcifie ladresse IP ou le nom de domaine auquel correspond lhte virtuel
ainsi que le numro de port. Dans lexemple ci-dessus, (ainsi que par dfaut), lhte virtuel est dfini pour toutes
les IPs (que le serveur http peut lire) et sur le port 80.
La directive ServerAdmin
ServerAdmin dfinie ladresse de contact que le serveur inclut dans les messages derreurs qui seront retourns au
client.
La directive DocumentRoot
Cette directive dfini le rpertoire dorigine partir duquel httpd distribue les fichiers. moins que lurl ne
corresponde un Alias (voir la directive Alias), le serveur ajoute le chemin de l'URL demande la racine du
document pour faire le chemin au document. La racine (DocumentRoot) devrait tre spcifie sans un slash en fin
de nom.
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
14
La directive Directory
<Directory> et </Directory> sont utiliss pour encapsuler un groupe de directives qui ne seront appliqus quau
rpertoire (et ces sous-rpertoires) spcifi dans <Directory nom_rpertoire>.
Combien y a-t-il de rpertoires configurs dans le fichier donn en exemple ? Quels sont-ils ?
La directive AllowOverride
Quand le serveur trouve un fichier .htaccess (comme spcifi par AccessFileName) il doit connatre quelles
directives dclares dans ce fichier peuvent ignorer des directives de configuration prcdentes. AllowOverride est
valable seulement dans des sections <Directory> dfinies sans expressions rgulires. Quand cette directive est
mise :
None, alors les fichiers .htaccess sont compltement ignors. Dans ce cas, le serveur n'essayera pas mme
de lire des fichiers de .htaccess dans le systme de fichiers.
All, le serveur prendra en compte toutes les directives dans le fichier .htaccess
La directive Order
La directive Order, associe avec les directives Allow et Deny, pilote un systme de contrle d'accs trois passages.
Le premier passage traite toutes les directives Allow ou Deny, comme spcifi selon la directive Order.
Le deuxime passage fait l'analyse syntaxique du reste des directives (Allow ou Deny).
Le troisime passage s'applique toutes les demandes qui ne correspondent aucun des premiers deux.
Notez que toutes les directives Allow et Deny sont traites, la diffrence d'un pare-feu classique, o seulement la
premire directive correspondante est utilise. De plus, l'ordre dans lequel les lignes apparaissent dans les fichiers
de configuration n'est pas significatif - toutes les lignes Allow sont traites comme un groupe et toutes les lignes
Deny sont considres comme un autre groupe.
L'ordre de traitement est un des deux suivants :
Allow,Deny : En premier, toutes les directives Allow sont values. Au moins une doit correspondre,
ou la demande est rejete. Ensuite, toutes les directives Deny sont values. Si une delles correspond,
la demande est rejete. En fin, n'importe quelles demandes qui ne correspondent pas un Allow ou
une directive Deny sont refuses par dfaut.
Deny,Allow : En premier, toutes les directives Deny sont values. Si une delles correspond, la
demande est rejete moins qu'elle ne corresponde aussi une directive Allow.
La directive Allow
La directive Allow dfini quels htes peuvent avoir accs un secteur du serveur. L'accs peut tre contrl par
hostname, l'adresse IP, la gamme d'adresse IP, ou selon d'autres caractristiques de la requte du client. Le premier
argument cette directive est toujours from. Les arguments suivants peuvent prendre trois formes diffrentes.
Allow from all : Pour permettre tous les htes l'accs, soumis la configuration des directives Order et
Deny.
Allow from host : Pour permettre seulement aux htes particuliers ou les groupes d'htes d'avoir accs
au serveur, l'hte peut tre spcifi dans n'importe lequel des formats suivants :
o Un nom de domaine partiel ou non : Allow from apache.org
o Une adresse IP partielle ou non : Allow from 10.1.2.3 ou Allow from 10.1
o Un couple rseaux/netmask : Allow from 10.1.0.0/255.255.0.0
o Un couple rseaux/nnn CIDR (nnn= nombre de bit 1) : Allow from 10.1.0.0/16
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
15
Allow from env=env-variable : Pour permettre laccs en fonction de lexistence ou de non de variable
denvironnement.
La directive Deny
Cette directive permet de limiter l'accs au serveur d'tre en fonction du hostname, de l'adresse IP, ou des variables
d'environnement. Les arguments pour la directive Deny sont identiques ceux de la directive Allow.
La directive Alias
La directive Alias permet aux documents d'tre stocks dans le systme de fichiers local ailleurs qu la racine
dfinie par la directive DocumentRoot. Imaginons que nous souhaitions donner accs au rpertoire
/home/student/public_html/secret en utilisant lurl http://www.iut-nice1.fr/secret/. Il suffirait pour cela dajouter
les lignes suivantes dans le fichier 000-default (qui contiendrait la configuration dun virtual host).
Alias /secret/ "/home/student/public_html/secret/"
<Directory "/home/student/public_html/secret/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Crez le rpertoire /home/student/public_html/secret et ajoutez les lignes ci-dessus dans votre fichier 000-default.
Pensez redmarrer votre serveur pour que votre nouvelle configuration soit prise en compte.
La directive ScriptAlias
La directive ScriptAlias a le mme comportement que la directive Alias, sauf quen plus elle indique la liste des
rpertoires contenant les scripts CGI qui seront excuts par le module mod_cgi.
Il est plus sr d'viter de placer des scripts CGI sous la racine DocumentRoot. Cela vitera de rvler
accidentellement leur code source si jamais la configuration du serveur est change.
La directive Options
La directive Options contrle que les fonctions du serveur sont disponibles dans un rpertoire particulier.
Options peut tre mise une des valeurs suivantes :
None : dans ce cas on ne permet aucune fonction supplmentaire,
All : toutes les options part Multivues. C'est la valeur par dfaut.
ExecCGI : On permet l'excution de scripts CGI utilisant mod_cgi.
FollowSymLinks : le serveur suivra des l symboliques dans ce rpertoire.
Includes : autorise les inclusions du ct du serveur laide du module mod_include.
IncludesNOEXEC : les inclusions du ct du serveur, mais les #exec cmd et #exec cgi sont dsactivs.
Indexes : si une URL correspondant un rpertoire est demande et quil ni pas de DirectoryIndex (e.g.,
index.html) dans le rpertoire, alors le module mod_autoindex pourra renvoyer une liste de rpertoire.
Normalement, si plusieurs directives Options sont appliques un rpertoire, alors la plus spcifique est utilise et
les autres sont ignors. Cependant si toutes les options de la directive Options sont prcdes par le symbole + ou les options sont fusionnes. N'importe quelle option prcde par un + est ajoute aux options actuellement actives
et n'importe quelle option prcde par un - est enleve des options actuellement actives.
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
16
<Directory /web/docs>
Options Indexes FollowSymLinks
</Directory>
<Directory /web/docs/spec>
Options Includes
</Directory>
Cependant si la deuxime directive Options utilise des symboles + et - alors les options FollowSymLinks et Includes
seront actives pour le rpertoire /web/docs/spec.
<Directory /web/docs>
Options Indexes FollowSymLinks
</Directory>
<Directory /web/docs/spec>
Options +Includes -Indexes
</Directory>
Revenons maintenant notre problme premier, comment crer des serveurs virtuels avec une mme IP.
5.1.3 Utilisation de serveurs virtuels par nom
Pour utiliser des serveurs virtuels par nom, vous devez dsigner l'adresse IP (et si possible le port) sur le serveur
devant accepter les requtes pour des domaines. Cette configuration utilise la directive NameVirtualHost. Dans un
cas normal, o n'importe quelle adresse IP peut tre utilise, vous pouvez ajouter * comme argument de la
directive NameVirtualHost. Si vous prvoyez d'utiliser de multiples ports (comme l'emploi de SSL), vous devriez
ajouter le port cet argument tel que *:80. Si la directive suivante nest pas dans votre fichier ports.conf ajoutez l.
NameVirtualHost *:80
L'tape suivante est la cration d'une section <VirtualHost> pour chacun des serveurs crer. L'argument de la
directive <VirtualHost> doit tre le mme que celui de la directive NameVirtualHost (c'est--dire l'adresse IP ou *
pour toutes les adresses). Dans chaque section <VirtualHost>, vous devez dfinir au minimum une directive
ServerName pour dsigner le serveur concern et une directive DocumentRoot pour prciser l'emplacement sur le
systme de fichiers du contenu de ce serveur. Crez deux copies du fichier default dans le rpertoire
/etc/apache2/sites-available/ que vous nommerez nice1 et nice2. Ajoutez la ligne suivante dans le fichier nice1 entre
la balise <VirtualHost *:80> et la directive DocumentRoot
ServerName www.iut-nice1.fr
Pensez crer le rpertoire /var/www/nice1 et ajoutez-y un fichier index.html qui affiche Nice 1 .
On recommence pour nice2. Ajoutez la ligne suivante dans le fichier nice2entre la balise <VirtualHost *:80> et la
directive DocumentRoot
ServerName www.iut-nice2.fr
Pensez crer le rpertoire /var/www/nice2 et ajoutez-y un fichier index.html qui affiche Nice 2
Le serveur principal disparat
Dans les configurations actuelles, on nutilise plus le serveur principal , mais uniquement des VirtualHost. Mais
cela pourrait tre le cas sur une plus ancienne version dapache httpd.
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
17
Ainsi, toutes les requtes portant sur un domaine iut-nice1.fr seront servies par le serveur virtuel www. iut-nice1.fr.
Les caractres joker * et ? peuvent tre utiliss pour les correspondances. Bien entendu, vous ne pouvez pas
inventer des noms et les placer dans une directive ServerName ou ServerAlias. Tout d'abord, votre serveur DNS doit
tre correctement configur pour lier ces noms une adresse IP associe avec votre serveur. Dans notre cas, pour
pouvoir tester ces noms, il va falloir remodifier le fichier c:\windows\system32\drivers\etc\hosts.
Maintenant, lorsqu'une requte arrive, le serveur va d'abord tester si elle utilise une adresse IP qui correspond
NameVirtualHost. Si c'est le cas, il regardera chaque section <VirtualHost> avec l'adresse correspondante et
essaiera d'en trouver une o le nom de domaine requis correspond ServerName ou ServerAlias. S'il en trouve une,
il utilisera sa configuration pour le serveur. Si aucun serveur virtuel ne correspond, alors le premier serveur virtuel
list dont l'adresse IP correspond sera employ. En consquence, le premier serveur virtuel list est le serveur
virtuel default. La directive DocumentRoot du serveur principal ne sera jamais employe lorsqu'une adresse IP
correspond dans une directive NameVirtualHost. Si vous ne voulez pas avoir de configuration spciale pour les
requtes qui ne sont pas attaches un serveur virtuel en particulier, mettez cette configuration dans une section
<VirtualHost> que vous placerez en premier dans le fichier de configuration.
Activez vos 2 nouveaux sites laide de la commande a2ensite qui est similaire celle utilis pour les modules
(a2dissite pour dsactiver un virtualhost).
Testez les 3 adresses suivantes et vrifiez qu chaque fois vous tes bien sur un serveur virtuel diffrent :
http://www.iut-nice1.fr/
http://www.iut-nice2.fr/
http://xxx.xxx.xxx.xxx/ (avec lIP de votre serveur)
Sans testez laction sur votre serveur, dites ce qui arrive si on dsactive le site par default (cest--dire si on efface le
fichier /etc/apache2/sites-enabled/000-default) et quon ouvre lurl suivante sur un navigateur. Pourquoi obtient-on
ceci ?
http://xxx.xxx.xxx.xxx/ (avec lIP de votre serveur)
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
18
On notera que pour dsactiver un site, il est prfrable dutiliser la commande a2dissite.
Quelle directive spcifie le port TCP sur lequel couter ? Quel est le port par dfaut ?
Il y a-t-il dautres fichiers de configuration chargs depuis apache2.conf ? O sont-ils placs ? Donnez en la
liste.
Sous quelle identit unix (utilisateur et groupe) le serveur va-t-il sexcuter ? Donner les UID et GID
correspondants.
Quel est le rpertoire racine pour les documents (pages) servis ?
Quelle page Apache2 renvoie-t-il lorsque lURL demande correspond un rpertoire ?
Comment sont traites les URL de la forme http://serveur/cgi-bin/toto ?
Quels sont les fichiers de logs gnrs ? O sont-ils placs ? Quel est leur format et comment est-il
contrl ?
19
2.
La balise LIMIT possde en attribut la valeur GET (en majuscule) et/ou la valeur POST, afin de dfinir
le type de mthode du protocole HTTP auxquelles la restriction s'applique
Require valid-user prcise que l'on autorise uniquement les personnes identifies. Il est galement
possible de prciser explicitement le nom des personnes autorises s'identifier : require user
{username}
Le chemin d'accs vers les fichiers de mots de passe et de groupes est de la forme suivante :
/repertoire1/repertoire2/.../.FichierDeMotDePasse
La directive AuthUserFile permet de dfinir l'emplacement du fichier contenant les logins et les mots de
passe des utilisateurs autoriss accder une ressource donne.
La directive AuthGroupFile permet de dfinir l'emplacement du fichier contenant les groupes d'utilisateurs
autoriss s'identifier. Il est possible d'outrepasser cette dclaration en dclarant le fichier suivant :
/dev/null.
Voici un exemple de fichier .htaccess :
Crez un fichier .htaccess qui demande de sidentifier pour accder au rpertoire secret que vous avez cr. Utilisez
un fichier de mot de passes contenant au moins 4 noms et vrifiez que seulement ceux-ci fonctionnent.
20
Exemple :
Order deny,allow
Deny from .domaine.com
Toutes les requtes provenant du domaine .domaine.com ne pourront avoir accs aux ressources comprises dans le
rpertoire et ses sous-rpertoires. La commande Order sert prciser explicitement que la commande Deny va bien
annuler l'effet de Allow et non l'inverse.
Voici un exemple de restriction d'accs plus complet:
ErrorDocument 403 http://www.iut-nice1/accesrefuse.html
AuthUserFile /var/conf/www/.pass
AuthGroupFile /dev/null
AuthName "Accs scuris au site Nice 1"
AuthType Basic
<LIMIT GET POST>
order deny,allow
deny from all
allow from 123.148.12.2
require user utilisateur gaetan
</LIMIT>
21
Crez un fichier .htaccess qui demande de sidentifier pour accder lurl http://www.iut-nice1.fr/secret/info.htm
et qui limite cet accs lutilisateur thomas.
Il ne faut utiliser quune seule balise <Files> par fichier. Sinon, l'erreur suivante est reporte dans le fichier de log
des erreurs :
.htaccess: Multiple arguments not (yet) supported.
Pour info, depuis Apache 1.3, il est conseill d'utiliser la balise <FilesMatch> la place de la balise <Files>. Cette
nouvelle balise ne supporte aussi qu'un seul argument mais on peut traiter plusieurs fichiers grce une expression
rgulire.
5.3.7
<Files *.png>
Deny from .domaine.com
</Files>
Toutes les requtes provenant du domaine .domaine.com ne pourront avoir accs aux images, dont l'extension est
.png, comprises dans le rpertoire et ses sous-rpertoires. Crez un fichier .htaccess qui bloque la lecture des
fichiers *.gif et *.txt dans le rpertoire secret pour tous les utilisateurs. Vous pouvez copiez un fichier depuis
internet sur votre machine virtuelle en utilisant la commande suivante :
> wget http://portail.unice.fr/jahia/txt/inc/img/logo_unice.gif
22
<Files php*>
Order deny,allow
Deny from all
Allow from .iut-nice1.fr
Allow from .org
</Files>
Toutes les requtes provenant du domaine .iut-nice1.fr ou des domaines ayant la terminaison .org pourront avoir
accs aux fichiers commenant par php (par exemple, les fichiers phpindex.html, phplogo.gif) compris dans le
rpertoire et ses sous-rpertoires.
5.3.9 Protger un rpertoire par un login
Cette mthode (beaucoup moins sre que la prcdente) permet une authentification de bas niveau uniquement
par le nom de l'utilisateur. La syntaxe est la suivante :
Require (user [liste des utilisateurs], group [liste des groupes], valid-user)
Attention ici user est un mot clef et non le nom dun utilisateur !!!
Tout utilisateur souhaitant rentrer dans le rpertoire ou un de ses sous-rpertoires sera refus sauf s'il s'identifie en
donnant un nom figurant dans la liste.
5.3.10 Obliger un utilisateur satisfaire au moins une des conditions
Voici la syntaxe :
Satisfy (any, all)
Order Allow, Deny
Deny from all
Allow from .free.fr
Require user gaetan student thomas paul
Satisfy Any
Ce qui signifie que l'accs au rpertoire sera bloqu pour tout le monde l'exception des personnes qui s'identifient
et des requtes provenant du domaine .free.fr.
5.3.11 Ajouter un Mime-Type un rpertoire
Un type MIME (en anglais MIME type) est un ensemble de types de fichiers standard, permettant d'associer une
extension de fichier donne une application, afin d'automatiser le lancement de l'application.
La syntaxe est la suivante :
AddType (mime/type [liste d'extension])
Voici un exemple de mise en oeuvre du fichier .htaccess :
AddType image/x-photoshop PSD
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .htm
Le serveur enverra au navigateur Internet le fichier en lui disant de lancer le programme Photoshop (s'il est install
sur votre machine) et de lui donner le fichier. Habituellement, ceci est utilis pour des fichiers ncessitant un Plugin particulier non reconnu par votre navigateur.
Cette commande permet aussi d'annuler tout lment prdfini. Ainsi, vous pouvez enregistrer un fichier .wav avec
une extension .gif et prciser au navigateur de considrer les fichiers .gif comme des fichiers audio ! En pratique, on
pourra donc utiliser cette commande pour ordonner linterprteur PHP dvaluer d'autres extensions de fichier,
.htm par exemple.
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
23
Par exemple avec la ligne suivante, tous les fichiers du rpertoire contenant le fichier .htaccess seront considrs
comme tant des fichiers .jpg quelle que soit leur extension :
ForceType image/jpg
Par exemple
DefaultType text/html
Cette option vous permet de dfinir le comportement par dfaut du navigateur face des extensions lui tant
inconnues. Ici, il prendra tout fichier inconnu en tant que document HTML.
5.3.14 Personnalisation des messages d'erreurs
Il s'agit d'une fonctionnalit pratique car elle permet de dfinir une page par dfaut pour un type d'erreur donn.
Cela permet d'une part de guider l'utilisateur au lieu d'afficher la banale page d'erreur du navigateur, ainsi que
d'gayer la navigation mme en cas d'erreur.
ErrorDocument (code--3-chiffres [nom du fichier ou texte ou url])
Les deux lignes suivantes permettent de dfinir des pages d'erreurs personnalises au cas o l'accs un document
serait interdit ou bien que le document n'existe pas :
ErrorDocument 403 /erreurs/403.php3
ErrorDocument 404 /erreurs/404.php3
Ceci vous permet de donner un message d'erreur personnalis remplaant les fichiers fournis avec le navigateur.
Voici quelques-unes des erreurs les plus courantes personnaliser :
401 Unauthorized : la personne n'a pas pass avec succs l'identification.
403 Forbidden : le serveur n'a pas le droit de rpondre votre requte.
404 Not Found : le serveur n'a pas trouv le document souhait.
Lorsque vous essayez d'accder au rpertoire sans prciser la page afficher, Apache va avoir recours la directive
DirectoryIndex. En gnral, par dfaut, cette directive pointe vers index.html puis index.htm. Dans l'exemple cidessus, Apache va commencer par chercher index.php, puis index.html, et ensuite index.phtml. Si aucun de ces trois
fichiers existent, la page 403.php (se trouvant dans la racine) sera affiche pour viter de lister le rpertoire.
24
Maintenant nous allons devoir installer le module ssl pour Apache. Normalement le module ssl (c'est--dire les
fichiers ssl.conf et ssl.load) se trouve dj dans /etc/apache2/mods-available/. Activez le module ssl. Notez que vous
pouvez aussi activer ou dsactiver les modules Apaches laide des commandes suivantes :
> a2enmod {nom_du_module}
> a2dismod {nom_du_module}
Nous supposerons dans la suite que le fichier openssl.cnf est dans /etc/ssl/ (ce qui devrait tre normalement le cas).
Vrifiez que cest bien le cas pour vous.
5.4.2 Rgler le serveur pour qu'il coute (aussi) sur le port 443
Par dfaut, Apache2 est configur pour couter sur le port 80. Vous pouvez vrifier les ports actifs sur votre
machine laide de la commande :
netstat -nlt
Or le protocole SSL a besoin d'mettre sur un port spcifique pour pouvoir fonctionner, celui qui est adopt en
gnral est le port 443. Pour cela ajoutez la directive suivante dans le fichier /etc/apache2/ports.conf (sauf si celle-ci
est dj prsente) :
Listen 443
L il vous demande un passphrase, entrez un mot de passe dont vous vous souviendrez. Finissez, en entrant des
informations rgionales (exemple : FR/PACA/Nice/Unice/LP/Gaetan Rey/Gaetan.rey@unice.fr/...). Ensuite, tapez :
> openssl rsa -in privkey.pem -out cle_ssl.key
> openssl x509 -in csr_ssl.csr -out crt_ssl.crt -req -signkey cle_ssl.key -days 3650
> openssl x509 -in crt_ssl.crt -out crt_ssl.der.crt -outform DER
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
25
Nous devons galement installer les modules php pour apache. Pour cela, vous devez installer un interprteur php
laide de la commande suivante :
> apt-get install php5
ou
> aptitude install php5
Ajoutez la ligne suivante pour que les fichiers php soient bien interprts par apache.
AddType application/x-httpd-php .php .php5
Nous allons galement installer le package suivant pour faire le lien entre php5 et mysql
> apt-get install php5-mysql
ou
> aptitude install php5-mysql
26
Une fois le script tlcharg, il faut le dcompresser dans un rpertoire. Cependant larchive tant en bz2, nous
devons dabord installer le logiciel bzip2 laide de la commande suivante. Installez bzip2 puis dcompresser votre
fichier dans un rpertoire.
> aptitude install bzip2
> tar xjvf phpBB-3.0.12.tar.bz2
Vous pouvez galement faire la mme chose pour les thmes subsilver2 et proSilver disponible aux adresses
suivantes :
http://www.phpbb.com/files/language_packs_30x/subsilver2_fr.tar.gz
http://www.phpbb.com/files/language_packs_30x/prosilver_fr.tar.gz
6.3 Configuration
Avant toute autre chose, vous allez crer un alias dans un des hosts virtuels de manire ce quon puisse accder
au forum (le rpertoire phpBB3) laide dune URL du type http://xxx.xxx.xxx.xxx/forum/
Maintenant allez sur la page http://xxx.xxx.xxx.xxx/forum/install/ depuis votre navigateur. Allez sur longlet
INSTALLER et suivez les instructions.
27
Finissez tranquillement de remplir les diffrents champs (vous dsactiverez les fonctions SMTP pour ne pas avoir
de problme). Une fois arriv la page suivante, vous avez termin linstallation. Bravo ;). Il faut maintenant
supprimer, dplacer ou renommer le rpertoire dinstallation avant dutiliser votre forum. Tant que ce rpertoire est
prsent, seul le panneau de contrle de ladministrateur sera accessible.
Rendez-vous sur la page http://xxx.xxx.xxx.xxx/forum/ pour vrifier si votre forum est bien fonctionnel.
28
Modifier la configuration de votre serveur pour que votre forum soit accessible via ladresse http://forum.iutnice1.fr.
DokuWiki est un Wiki, conforme aux standards, simple utiliser, dont le but est de crer des
documentations de toute sorte. Il est destin aux quipes de dveloppement, aux travaux de groupe et aux
petites entreprises. Il possde une syntaxe simple mais puissante qui assure la lisibilit des fichiers de
donnes en dehors du Wiki, et facilite la cration de textes structurs. Toutes les donnes sont stockes
dans des fichiers textes aucune base de donne n'est requise.
MediaWiki est un logiciel libre dvelopp l'origine pour Wikipdia et utilis aujourd'hui par de
nombreux autres projets de l'association but non lucratif Wikimedia Foundation ainsi que par d'autres
sites reposant sur la technologie wiki, sous license GNU General Public License (GPL). Il est utilis par
Wikipdia et d'autres projets de la fondation Wikimdia, ainsi que par bien d'autres sites et wikis.
29
PmWiki est un systme de type wiki pour la cration et l'entretien collectif de sites Internet. Les pages
PmWiki ont le mme aspect et fonctionnent comme des pages Internet ordinaires, sauf qu'elles possdent
un lien pour "diter" ce qui permet de modifier ou d'ajouter facilement des pages un site, en utilisant les
rgles d'dition de base. Vous n'avez pas besoin de connatre le langage HTML ou les CSS. L'dition des
pages peut tre laisse ouverte tout public ou restreinte un petit groupe d'auteurs.
WikiNi offre un moyen particulirement simple, efficace et rapide de crer et grer un site internet ou
intranet. Il s'installe en une dizaine de minutes sur un serveur web supportant Php et une base de donnes
MySQL. Cet outil permet, en ligne, avec n'importe quel navigateur Web :
o de crer, supprimer, modifier, commenter les pages d'un site, quel que soit le nombre d'diteurs et
de pages.
o de grer les droits d'accs aux diffrentes pages (lire, crire, commenter).
o d'laborer la mise en page des contenus de manire intuitive et trs visuelle, par des rgles de
formatage ne ncessitant aucune connaissance informatique.
o de publier instantanment toute cration ou modification de page.
o d'analyser, de grer l'ensemble du site partir de fonctions simples : plan du site, liste des
utilisateurs, suivi des dernires pages modifies ou commentes, etc.
8.1 Installation
Cliquez deux fois sur le fichier msi et suivez les instructions (voir si dessous pour les choix faire en fonction des
diffrents crans). Pensez bien remplacer les identifiants donns comme exemple par votre propre identifiant.
30
Bravo vous avez fini linstallation dapache http Server 2.2. Pour vrifier que tout va bien ouvrez la page suivante
depuis un navigateur se trouvant sur la mme machine que le serveur apache :
http://localhost/
8.2 Configuration
Concernant la configuration du serveur, tout fonctionne comme sous linux. Si vous avez install Apache http
server dans le rpertoire C:\Program Files\Apache Software Foundation\Apache2.2
Vous trouverez les fichiers de configurations dans le rpertoire C:\Program Files\Apache Software
Foundation\Apache2.2\conf. Notez que tout est configur dans le fichier httpd.conf.
Que la racine du serveur web (l o les pages sont stockes) est le rpertoire C:/Program Files/Apache
Software Foundation/Apache2.2/htdocs.
La commande pour dmarrer le serveur est "C:\Program Files\Apache Software
Foundation\Apache2.2\bin\httpd.exe" -w -n "Apache2.2" -k start
La commande pour redmarrer le serveur est "C:\Program Files\Apache Software
Foundation\Apache2.2\bin\httpd.exe" -w -n "Apache2.2" -k restart
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
31
9.1 Installation
Allez dans le panneau de configuration de Windows puis choisissez ajouter ou supprimer des programmes puis
allez dans Ajouter ou supprimer des composants Windows dans le menu de gauche. Vous arriverez alors sur
lcran suivant :
Slectionnez IIS dans la liste droulante (cochez la case) puis allez dans Dtails. L, vous pouvez ajouter ou
supprimer des options (comme le service SMTP ou la fonction FTP ). Faites OK puis suivant. Linstallation se
termine tranquillement. Ouvrez un navigateur dans la machine virtuel et allez ladresse suivante pour vrifier que
votre serveur http fonctionne correctement : http://localhost/.
Vrifiez galement les points suivants :
Licence Professionnelle Nice Sophia
Universit de Nice Sophia Antipolis
930, Route des Colles B.P. 145 - 06903 Sophia Antipolis Cedex France
Tl : +33 (0)4 92 96 50 50 Fax : +33 (0)4 92 96 50 55
http://www.polytech.unice.fr/
32
Linstallation de votre serveur IIS, a automatiquement install la racine de votre disque local "C", un
dossier nomm "Inetpub", lequel est le dossier racine de votre serveur "ISS".
Ce dossier racine "Inetpub", contient bien plusieurs dossiers de fichiers, dont un dossier nomm "wwwroot
(le chemin du dossier ou rpertoire nomm "wwwroot" est bien C :\Inetpub\wwwroot\)
Cette structure de chemin, vous aidera comprendre la signification prcise de la syntaxe du rpertoire racine,
lorsque vous crerez vos premires pages web dynamiques avec leurs extensions spcifiques ASP et/ou ASPX.
Excutez la commande inetmgr pour ouvrir et accder votre serveur IIS.
Droulez, dans la fentre de votre serveur IIS, le nud du dossier Sites web, pour faire apparatre la dpendance
Site Web par dfaut, sur laquelle vous appliquerez un clic droit, puis vous slectionnerez la commande "Nouveau>Rpertoire virtuel..."
33
Donnez un nom (alias) votre rpertoire virtuel, lequel va reprsenter le nom de votre dossier de site racine, qui
sera en vrit, le mme que celui que portera le nom de votre rpertoire de site web virtuel. Par la suite, nous
ferons lhypothse davoir choisi Nice1 comme nom. Faites suivant puis cliquez sur le bouton "Parcourir" afin de
crer votre rpertoire de site web virtuel et le placer comme sur limage ci-dessous.
Cliquez sur "Suivant", aprs avoir vrifi que ladresse du rpertoire de contenu de votre site web est bien C
:\Inetpub\wwwroot\Nice1. Laissez les autorisations et paramtres daccs par dfaut tels quels ; ils conviendront
pour la plupart des cas, puis cliquez sur "Suivant" pour continuer. Quittez cet assistant afin dafficher la structure
de votre nouveau rpertoire virtuel.
Copier un fichier index.html dans votre nouveau rpertoire. Si vous vous rendez lurl http://xxx.xxx.xxx.xxx/nice1/
vous ne verrez quun message derreur safficher. Les fichiers par default tant diffrents sous IIS. Faites un clic
droit->proprit sur Nice1 dans votre interface de contrle puis allez dans longlet Document. Ajoutez index.html
la liste.
34
Nous devons redmarrer le serveur pour que les modifications soient prises en compte. Faites-le laide de
linterface de contrle comme indiqu sur la figure suivante.
35