Académique Documents
Professionnel Documents
Culture Documents
1
Petit historique du Worl Wide Web
http://www.w3.org
• Notion d’Hypertexte
1980
• Extension à internet par Tim Berners Lee
• Définition du langage HTML, du protocole HTTP
1990 • Mosaic
Requête HTTP
Client
Requête GET à une URL Serveur
Décodage & Affichage
Flux HTML
HTML
2
Pages dynamiques
Requête HTTP
Client Serveur
Flux HTML Exécution du
programme qui
génère le HTML
3
Pages dynamiques
http://java.sun.com
4
Pages dynamiques
Requête HTTP
Client Serveur
Interprétation des
Flux HTML scripts PHP par le
module qui l’intègre
au flux HTML
texte HTML + sortie PHP
5
PHP et MySQL
Flux HTML
Requête MySQL
texte HTML + sortie PHP
MySQL
6
Le serveur APACHE
7
Fichiers de Configurations
8
Le fichier HTTPD.CONF
Le fichier httpd.conf contient les informations de
configuration du serveur APACHE
Les dernières versions d’Apache recommandent la
fusion de tous les fichiers de configuration dans le
fichier httpd.conf
Il comportent plusieurs sections:
1. Informations d’identification du serveur et de son
mode de fonctionnement
2. Informations de spécification du contenu (répertoires,
propriétés et droits d’accès sur les fichiers et les
répertoires, hébergement virtuel,
3. Modules inclus (perl, php, etc ..)
4. Etc ….
9
Le fichier HTTPD.CONF
Mode de fonctionnement d’apache
ServerType standalone apache se lance d’une
manière autonome.
StartServers 5
Indique le nombre de serveur httpd a lancé au
démarrage.
MaxClient 150
Indique le nombre de serveurs httpd lancés
simultanément.
Port 80
Indique le numéro de port utilisé par le serveur apache
10
Le fichier HTTPD.CONF
Utilisateur et groupe propriétaire du démon
Apache
User www
Group www
Indiquent le groupe et l’utilisateur propriétaire du
démon httpd.
E-mail de l’administrateur du service
ServerAdmin webmaster@ecole.ac.ma
Indique l’é-mail de l’administrateur du serveur
11
Spécification du contenu publié
Identification du serveur
ServerName www.formation.ma
Indique le nom de domaine du service web
local.
Spécification du répertoire par défaut du
contenu du site
DocumentRoot /var/www/htdocs
Indique le répertoire par défaut ou se trouvent
les fichiers .html publiés.
12
Spécification du contenu publié
Spécification de l’emplacement du répertoire
contenant les scripts CGI
ScriptAlias /cgi-bin/ /var/www/cgi-bin
Spécification des Alias
Un Alias est un répertoire publié à partir de la racine sous un autre
nom:
Alias /mysql/ "D:/Program Files/EasyPHP/phpmyadmin/«
Permet d’accéder au contenu de ce répertoire en tapant l’URL:
http:www.site.ma/mysql
Spécification des pages par défaut:
DirectoryIndex index.html index.shtml index.php index.wml
index.pwml index.php3
Cette option permet d’identifier la page qui constitue le point d’entrée
au site, la liste sera prise par Apache selon l’ordre d’apparence
13
Spécification du contenu publié
Configuration du Répertoire:
Définit le répertoire où se trouvent les fichiers CGI.
Le répertoire du site
14
Spécification du contenu publié
Le répertoire (suite)
Apache publie le contenu d’un répertoire par
défaut jusqu’à ce que l’utilisateur modifie ce
comportement
La configuration d’un répertoire doit comporter au
moins:
Le chemin d’accès au répertoire
La page par défaut (optionnel)
Le mode d’accès au répertoire
Les fichiers logs liées à ce répertoire
15
Spécification du contenu publié
Le Répertoire (suite)
Configuration du chemin du contenu d’un répertoire :
<Directory /var/www/>
Options FollowSymLinks
Autorise à suivre les liens symboliques
Options Indexes permet de visualiser le contenu du site
(déconseillé)
AllowOverride None utilise les droits d’accès déjà définis
sur le répertoire et non ceux définis dans le fichier
.htaccess
Order allow,deny applique les règles allow puis deny
Allow from all accepter les requêtes de n’importe quel
hôte ou nom de domaine.
</Directory> Termine la configuration du Répertoire
16
TP N°=1
17
Virtual Hosting sous APACHE
Le virtual Hosting permet d’héberger sur le même serveur
plusieurs sites WEB identifiés par des noms de
domaines différents.
Le principe est d’attacher à un serveur web s’exécutant sur
une machine identifiée par une adresse IP unique,
plusieurs sites identifiés par leur nom de domaine.
Au niveau du DNS cela se traduit par la mise en
correspondance entre les différents noms de domaine
des sites avec une adresse IP unique:
www.ecole.ma. IN A 192.168.1.5
www.machin.formation.ma. IN A 192.168.1.5
www.truc.edu.ma. IN A 192.168.1.5
18
Configuration du Virtual Hosting
19
Enregistrement minimum d’un
VirtualHost
Une configuration minimale d’un site web dont le nom de
domaine est : www.virtual.ma hébergé dans un
serveur dont l’adresse IP est: 192.168.1.5 à l’intérieur
du répertoire /var/home/virtual sera de la forme
suivante:
<VirtualHost 192.168.1.5 >
ServerAdmin webmaster@ecole.ma
DocumentRoot /var/home/ecole
ServerName www.virtual.ma
</VirtualHost>
20
TP N°=2
21
Politique d’accès aux Documents
Chaque domaine virtuel peut appliquer une politique
d’accès qui lui est propre.
Deux types d’accès existent:
Accès contrôlé par les droits d’accès systèmes sur
le répertoire (droit de lecture, écriture etc )
Accès protégé par mots de passe: et dans ce cas
l’utilisateur sera invité à fournir un username/mot
de passe valide pour visualiser les pages
22
Configurer la restriction d’accès aux
Documents
Stratégie globale:
La restriction s’appliquera sur tous les documents (c’est-
à-dire tous les sites hébergés)
La première étape consiste à créer un fichier contenant
les utilisateurs avec leurs mots de passe pour
l’authentification, par exemple le fichier web-users
La deuxième étape consiste à modifier la configuration
de httpd.conf afin d’authentifier les accès au site
23
Configurer la restriction d’accès aux
Documents
Première Etape:
La commande htpasswd permet de créer le fichier des
utilisateurs avec les noms d’utilisateur et leur mot de
passe séparés par :, exemple :
htpasswd –c web-users username passwd: Permet
de créer le fichier web-users en lui incluant un utilisateur
et son mot de passe.
Il ressemble au fichier suivant:
omar:WrU808BHQai36
ali:iABCQFQs40E8M
mina:FAdHN3W753sSU
24
Configurer la restriction d’accès aux Documents
Deuxième Étape: Rajouter dans la config du répertoire
du site concerné les lignes suivantes
AuthType Basic|Digest type du cryptage des mots de passe
AuthName authentication le titre qui s’affiche sur la fenêtre de
l’authentification
AuthUserFile /etc/httpd/web-users le fichier password
AuthGroupFile /etc/httpd/group le fichier de groupe des
utilisateurs autorisés.
require valid-user nécessite un utilisateur valide dans le
fichier .htaccess
require user martin joe autorise seulement martin et joe à y
accéder
require groupe groupe1 groupe2 autorise les membres du
groupe 1 et groupe 1
25
Configurer la restriction d’accès aux
Documents
Structure d’un fichier groupe:
Chaque ligne contient le nom d’un groupe suivi
de la liste des utilisateurs de ce groupe
séparés par un « : »
staff:martin jane
admin: art adminuser
Groupe1: abdo reda mina
26
TP N°=3
27