Serveurs virtuels nommés avec Apache 2

Objectif

Afin de pouvoir mettre en place plusieurs sites web identifiés par différents noms de domaine sur un même serveur Apache 2, nous allons ici nous intéresser aux serveurs virtuels nommés.

logo-apache

Cette méthode est très répandue, dans un contexte de développement (ici sur Ubuntu), l’idée est simplement d’associer deux noms de domaine à l’adresse IP de bouclage.

La finalité est de pouvoir accéder localement aux sites via les urls :

  • http://monsite1-local.org et http://www.monsite1-local.org
  • http://monsite2-local.org et http://www.monsite2-local.org

Créer les sites web monsite1 et monsite2

Créer le premier site web :

nico@laptop:/$ cd /var/www/
nico@laptop:/var/www$ mkdir monsite1-local.org
nico@laptop:/var/www$ cd monsite1-local.org
nico@laptop:/var/www/monsite1-local.org$ touch index.html
nico@laptop:/var/www/monsite1-local.org$ vim index.html

Saisir le contenu :

<h1>Site 1</h1>

Procéder de la même manière pour monsite2-local.org.

Les sites sont alors accessibles aux urls :

  • http://localhost/monsite1-local.org/
  • http://localhost/monsite2-local.org/

Créer les serveurs virtuels nommés

Se rendre dans le répertoire des sites disponibles sur le serveur Apache :

nico@laptop:/var/www/monsite1-local.org$ cd /etc/apache2/sites-available/
nico@laptop:/etc/apache2/sites-available$ sudo vim monsite1-local.org

Ajouter le contenu suivant au fichier de configuration du site :

<VirtualHost *:80>
 
        DocumentRoot /var/www/monsite1-local.org
        ServerName monsite1-local.org
        ServerAlias www.monsite1-local.org
 
        ErrorLog /var/log/apache2/monsite1_error_log.log
        CustomLog /var/log/apache2/monsite1_access.log combined
 
</VirtualHost>

Activer le serveur virtuel nommé monsite1-local.org :

nico@laptop:/etc/apache2/sites-available$ sudo a2ensite monsite1-local.org
Enabling site monsite1-local.org.
Run '/etc/init.d/apache2 reload' to activate new configuration!
nico@laptop:/etc/apache2/sites-available$ ls ../sites-enabled/
000-default  monsite1-local.org

Ajouter le nouveau nom de domaine :

nico@laptop:/etc/apache2/sites-available$ sudo vim /etc/hosts

Ajouter les lignes :

127.0.0.1	monsite1-local.org
127.0.0.1	www.monsite1-local.org

Vérifier la configuration du serveur :

nico@laptop:/etc/apache2/sites-available$ apache2ctl configtest
Syntax OK

Recharger le serveur pour prendre en compte les modifications :

nico@laptop:/etc/apache2/sites-available$ sudo /etc/init.d/apache2 reload
 * Reloading web server config apache2                         [ OK ]

Répéter l’opération pour monsite2-local.org.

Les sites sont désormais accessibles aux urls :

  • http://monsite1-local.org et http://www.monsite1-local.org
  • http://monsite2-local.org et http://www.monsite2-local.org

Ressources complémentaires

Apache Permalien.

Une réponse pour Serveurs virtuels nommés avec Apache 2

  1. Yoann says:

    Juste en passant, je me demandais pourquoi j’avais ce warning quand je redémarrais apache :
    apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

    En modifiant l’ordre dans mes hosts (/etc/hosts), il a disparu.
    Avant :
    127.0.0.1 [nom_pc] localhost.localdomain localhost

    Après :
    127.0.0.1 localhost.localdomain localhost [nom_pc]

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">