www.starend.org

TechNIX

Tags

site virtuel virtual apache

Création d'un site virtuel sous Apache

18/09/2008

1/Introduction

De nos jour, il n'est pas rare qu'un même serveur web délivre les pages de plusieurs sites webs complètements différents.

En plus du site principal, on trouve des sites dits 'virtuels'. Bien que parfaitement fonctionnels et autonomes, ils n'en sont pas moins hébergés par un serveur web commun tout en ayant leurs environnements de travail propres à chacuns.

On rejoint la virtualisation de machines, ou plutôt ne serait-ce pas l'inverse en fait ;-)

Exemple sur mon serveur web avec un nom de domaine sous mon control. Mes site web sont stockés dans /www .

2/Déclaration dans le DNS

Se connecter en 'root' au serveur DNS maître de la zone.

Modifier la zone, passer le serial à la date du jour :

$TTL    86400
@       IN      SOA     starend.org. webmaster.starend.org. (
                     2008091801         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                          86400 )       ; Negative Cache TTL
;
@       IN      NS      dns1.starend.org.
@       IN      NS      dns2.starend.org.
...

Le serial doit toujours augmenter dans le temps, d'ou la raison pour laquelle on utilise la date en sens inverse.
Dans le serial, le dernier '01' permet d'incrémenter le serial lorsque plusieurs modifications ont lieu le même jour.

Modifier la zone, ajouter un nouveau sous domaine :

...
portrait     IN     CNAME     www.starend.org.

Et redémarrer le démon Bind :

/etc/init.d/bind9 restart

Dans les logs, on retrouve ce genre de choses :

...
Sep 18 22:19:29 10.254.53.1 named[1263]: shutting down: flushing changes
Sep 18 22:19:29 10.254.53.1 named[1263]: stopping command channel on 127.0.0.1#953
Sep 18 22:19:29 10.254.53.1 named[1263]: no longer listening on 127.0.0.1#53
Sep 18 22:19:29 10.254.53.1 named[1263]: no longer listening on 0.0.0.0#53
Sep 18 22:19:29 10.254.53.1 named[1263]: exiting
Sep 18 22:19:32 10.254.53.1 named[7555]: starting BIND 9.3.4-P1.1 -u bind
Sep 18 22:19:32 10.254.53.1 named[7555]: found 1 CPU, using 1 worker thread
Sep 18 22:19:32 10.254.53.1 named[7555]: loading configuration from '/etc/bind/named.conf'
Sep 18 22:19:32 10.254.53.1 named[7555]: listening on IPv4 interface lo, 127.0.0.1#53
Sep 18 22:19:32 10.254.53.1 named[7555]: listening on IPv4 interface eth0, 0.0.0.0#53
Sep 18 22:19:32 10.254.53.1 named[7555]: command channel listening on 127.0.0.1#953
Sep 18 22:19:32 10.254.53.1 named[7555]: zone starend.org/IN: loaded serial 2008091801
Sep 18 22:19:32 10.254.53.1 named[7555]: running
Sep 18 22:19:32 10.254.53.1 named[7555]: zone starend.org/IN: sending notifies (serial 2008091801)
...

3/Site virtuel dans Apache

Créer le répertoire qui accueillera les pages web :

# mkdir /www/portrait.starend.org

Penser à adapter les droits du répertoire... notament le user 'www-data' doit pouvoir y lire si vous voulez que Apache puisse montrer vos belles pages toutes fraîches ;-)

Créer un fichier /etc/apache2/sites-available/portrait.starend.org contenant quelque chose ressemblant à ceci :

<VirtualHost *:80>
        ServerName portrait.starend.org
        ServerAlias portrait.starend.lan
        ServerAdmin webmaster@starend.org
        DocumentRoot /www/portrait.starend.org/
        <Directory /www/portrait.starend.org/>
                AllowOverride None
                <limit POST>
                        deny from all
                </limit>
                <limit GET>
                        allow from all
                </limit>
        </Directory>
        ErrorLog /var/log/apache2/portrait_error.log
        LogLevel info
        CustomLog "|/usr/bin/logger" combined
        CustomLog /var/log/apache2/portrait_access.log combined
        ServerSignature Off
</VirtualHost>

Créer un lien dans /etc/apache2/sites-enabled/ pour rendre le site virtuel actif :

ln -s ../sites-available/portrait.starend.org /etc/apache2/sites-enabled/012-portrait.starend.org

Redémarrer Apache

/etc/init.d/apache restart

Si tout se passe bien, la nouvelle page est accessible à l'adresse : http://portrait.starend.org/ :-)

Licence Creative Common 2007 :: BY-NC-SA :: Webdesign DENDIEVEL Stéphane