Professional Documents
Culture Documents
1
BERNIER Franois AFPA Formation TSGERI 2012-2013
2
BERNIER Franois AFPA Formation TSGERI 2012-2013
Le modle Client-Serveur
Cest la description du fonctionnement coopratif entre le serveur et le client. Les services
internet sont conus selon cette architecture. Ainsi, chaque application est compose de
logiciel serveur et logiciel client. A un logiciel serveur, peut correspondre plusieurs logiciels
clients dvelopps dans diffrents environnements: Unix, Mac, PC; la seule obligation est
le respect du protocole entre les deux processus communicants. Ce protocole tant dcrit dans
un RFC (Request For Comment).
Larchitecture client/serveur dsigne un mode de communication entre des ordinateurs et des
logiciels. Les mots serveur et client dsignent les logiciels de type serveur et client
dans cette architecture, logiciels fonctionnant sur les ordinateurs quon nomme par abus de
langage serveur informatique et poste client.
Le serveur est lcoute dun rseau informatique, prt rpondre aux requtes
envoyes par des clients.
Les clients sont gnralement pilots par des utilisateurs. Ils prennent linitiative
denvoyer des requtes au serveur, puis attendent la rponse pour la donner, le cas
chant, lutilisateur.
3
BERNIER Franois AFPA Formation TSGERI 2012-2013
les rgles de gestion, les traitements et les accs aux donnes sont raliss sur le serveur
central,
les contrles de saisie, les enchanements des dialogues sont effectus sur les postes
client.
Ce modle minimise les flux sur le rseau et tire parti de la puissance des machines locale et
centrale.
4
BERNIER Franois AFPA Formation TSGERI 2012-2013
Type dactivit
5
BERNIER Franois AFPA Formation TSGERI 2012-2013
Le principe de base est une connexion de type client/serveur : un client (le navigateur) se
connecte sur un serveur, met une requte et le serveur rpond. La connexion est une simple
ouverture de socket TCP/IP gnralement sur port 80, mais on utilise aussi de temps en temps
le port 8080 (pour les connexions sur proxy, par exemple).
Le protocole le plus utilis pour communiquer avec un serveur Web sur Internet est le protocole
HTTP (Hyper Text Transfer Protocole). Il dfinit les rgles de communication entre un client
(navigateur) et un serveur Web.
La requte la plus simple du protocole HTTP est forme de GET suivi d'une URL qui pointe
sur des donnes (fichier statiques, traitement dynamique...).
Elle est envoye par un navigateur quand nous saisissons directement une URL dans le
champ d'adresse du navigateur.
Le serveur HTTP rpond en renvoyant les donnes demandes.
6
BERNIER Franois AFPA Formation TSGERI 2012-2013
En dtail :
En tapant l'URL d'un site, l'internaute envoie (via le navigateur) une requte au serveur.
Une connexion s'tablit entre le client et le serveur sur le port 80 (port par dfaut d'un serveur
Web).
Le navigateur envoie une requte demandant l'affichage d'un document. La requte contient
entre autres la mthode (GET, POST, etc.) qui prcise comment l'information est envoye.
Le serveur rpond la requte en envoyant une rponse HTTP compose de plusieurs parties,
dont :l'tat de la rponse, savoir une ligne de texte qui dcrit le rsultat du serveur (code 200
pour un accord, 400 pour une erreur due au client, 500 pour un erreur due au serveur) ,les
donnes afficher.
Une fois la rponse reue par le client, la connexion est ferme. Pour afficher une nouvelle
page du site, une nouvelle connexion doit tre tablie.
Avant de commencer :
Un serveur HTTP ou daemon HTTP est un logiciel servant des requtes respectant le
protocole de communication client-serveur Hypertext Transfer Protocol (HTTP), qui a t
dvelopp pour le World Wide Web.
7
BERNIER Franois AFPA Formation TSGERI 2012-2013
8
BERNIER Franois AFPA Formation TSGERI 2012-2013
Les fichiers de paramtrage se trouvent sous linux dans le rpertoire /etc/apache2, les
fichiers de donnes (les pages web) dans /var/www et les fichiers logs dans
/var/log/apache2.
apache2.conf -> fichier de base du serveur, contient des includes (voir plus bas)
conf.d -> paramtrage du serveur dune manire globale : par exemple pour la scurit, le
caracter-set
envvars -> les variables environnement
httpd.conf -> fichier prsent uniquement pour la compatibilit avec certains logiciels qui
ont besoin de voir ce fichier, mme vide. Plus utilis.
magic -> permet de dfinir le type de fichier daprs son extension, pour que le serveur
adapte sa
rponse au client (choix du type MIME renvoy, la langue,..)
mods-available -> les modules supplmentaires disponibles
mods-enabled -> les modules supplmentaires activs
.htaccess -> fichier de configuration dynamique du serveur. Son emplacement spcifie le
rpertoire quil paramtre.
ports.conf -> pour dfinir et ajouter des ports dcoute du serveur
sites-available -> les fichiers de configuration des sites disponibles, mais pas en ligne
sites-enabled -> les fichiers de configuration des sites en ligne
commenter default port * :80
Un des points forts dApache est son architecture modulaire.
Il est facile dajouter ou de supprimer des modules selon les besoins : database, langage de
programmation du style Python, Perl, PHP, Java, .
Aprs chaque modification des fichiers de configuration, redmarrer le serveur avec la
commande :
# service apache2 reload
Le chargement des fichiers se fait par include dans le fichier apache2.conf
Include
serveur
Include
Include
Include
Include
Include
9
BERNIER Franois AFPA Formation TSGERI 2012-2013
apache.conf
mods-enabled/*.load
authnz_ldap.load
cgi.load
dump_io.load
ldap.load
Include mods-enabled/*.load
mods-enabled/*.conf
proxy.conf
ssl.conf
setenvif.conf
Include mods-enabled/*.conf
httpd.conf
Include httpd.conf
Include ports.conf
Include conf.d/
Include sites-enabled/
ports.conf
NameVirtualHost*:80
Listen80
<IfModulemod_ssl.c>
Listen443
</IfModule>
<IfModulemod_gnutls.c>
Listen443
</IfModule>
conf.d/
Charset
localized-error-pagesothervhosts-access-logsecurity
sites-enabled/
000-default
10
BERNIER Franois AFPA Formation TSGERI 2012-2013
11
BERNIER Franois AFPA Formation TSGERI 2012-2013
works !!
Installation de plusieurs serveurs web (Virtual Hosts) sur une instance Apache2
Sources : http://httpd.apache.org/docs/2.2/fr/vhosts/ip-based.html
Un Virtual Host est un serveur web servi par Apache2.
Les Virtual Hosts sont grs comme des modules.
Chaque site obtient un fichier de configuration qui lui est propre.
En ajoutant une adresse IP (alias) une interface virtuelle, on peut crer plusieurs serveurs
virtuels.
12
BERNIER Franois AFPA Formation TSGERI 2012-2013
Informations a jouter
manuellement :
- adresse IP de linterface
- masque de sous rseau
- passerelle par dfaut
- adresse de diffusion
- adresse IP du rseau
- adresse IP du serveur DNS
principal
Puis vrifier avec la commande ifconfig que les 3 interfaces sont bien disponibles.
13
BERNIER Franois AFPA Formation TSGERI 2012-2013
14
BERNIER Franois AFPA Formation TSGERI 2012-2013
15
BERNIER Franois AFPA Formation TSGERI 2012-2013
- ladresse IP des 2 serveurs web virtuels www2 et www3 accessibles sur le port 80 (http)
16
BERNIER Franois AFPA Formation TSGERI 2012-2013
Ajouter maintenant les enregistrements A et PTR dans le serveur DNS (dans les 2 fichiers de
votre zone) des 2 serveurs web :
17
BERNIER Franois AFPA Formation TSGERI 2012-2013
18
BERNIER Franois AFPA Formation TSGERI 2012-2013
19
BERNIER Franois AFPA Formation TSGERI 2012-2013
20
BERNIER Franois AFPA Formation TSGERI 2012-2013
21
BERNIER Franois AFPA Formation TSGERI 2012-2013