Serveur Web · 4 min read · Jan 07, 2026

Créez votre propre serveur Web avec BIND et Apache sur CentOS 5 (Simplifié) - Page 2

Sautons à nouveau :) Cette fois un peu plus loin à la ligne 1005, vous devriez voir :

NameVirtualHost *:80

La directive NameVirtualHost indique à Apache que nous voulons utiliser l’hébergement virtuel basé sur le nom, ou en termes plus simples, un ensemble de sites Web utilisant la même adresse IP. Ajoutez quelques lignes vides sous ‘#NameVirtualHost *:80’ et sur la ligne juste en dessous, mettez NameVirtualHost et votre nom d’hôte ou adresse IP suivi de :80. Le ‘:80’ signifie que nous utilisons l’hébergement virtuel basé sur le nom pour le protocole HTTP.

Donc, vous devriez produire quelque chose comme ceci :

NameVirtualHost host.website.com:80

Maintenant, nous avons presque terminé de configurer notre fichier httpd.conf. La seule chose qu’il nous reste à configurer est si quelqu’un visite notre serveur en utilisant l’IP plutôt que le nom de domaine, nous allons définir notre nom d’hôte par défaut pour être visible par ces utilisateurs. Nous pouvons insérer ceci à la fin du fichier de configuration


    ServerAdmin [email protected]
    DocumentRoot /www
    ServerName 77.77.197.69
    ErrorLog logs/error_log
    CustomLog logs/access_log common

Afin de garder notre

httpd.conf

plus facile à gérer, nous devrions ajouter cette ligne en bas du fichier :

Include conf/vhosts/*.conf

Cela signifie que nous allons inclure toutes les entrées .conf de /etc/httpd/conf/vhosts où nous allons stocker les hôtes virtuels pour nos sites Web au fur et à mesure que nous les ajoutons. Ce sera plus facile à comprendre à mesure que nous progressons. Ok, nous avons presque terminé, enregistrez httpd.conf et passez à autre chose.

Création des répertoires de site Web

Nous devrions maintenant créer la structure de répertoire du site Web afin de gérer correctement nos sites Web. Tout d’abord, créons le répertoire principal :

mkdir /www

Nous faisons maintenant de root le propriétaire de /www :

chown root.root /www

Avant d’aller plus loin, nous devons faire un ajustement, nous devons ajouter une zone pour host.website.com dans notre named.conf car nous l’avons utilisé comme nom d’hôte dans httpd.conf et nous obtiendrons une erreur si nous ne le faisons pas. Donc, nous devrions ajouter ceci à named.conf

zone "host.website.com" IN {
        type master;
        file "/var/named/host.website.com.db";
};

Et bien sûr, ci-dessous se trouve le contenu du fichier :

/var/named/chroot/var/named/host.website.com.db
$TTL 14400
@      86400    IN      SOA     ns1.website.com. [email protected]. (
                2008021501      ; serial, date d'aujourd'hui+aujourd'hui
                86400           ; rafraîchir, secondes
                7200            ; réessayer, secondes
                3600000         ; expirer, secondes
                86400 )         ; minimum, secondes
host.website.com. 86400 IN NS ns1.website.com.
host.website.com. 86400 IN NS ns2.website.com.
host.website.com. IN A 77.77.197.69
localhost.host.website.com. IN A 127.0.0.1

Vous pouvez ajouter autant d’enregistrements que vous le souhaitez. Avant de redémarrer named, faites un lien :

ln -s/var/named/chroot/var/named/host.website.com.db /var/named/host.website.com.db
service named restart

Maintenant, revenons à la structure de répertoire. Donc, nous avons ajouté une zone pour notre

website.com

maintenant nous avons besoin d’un répertoire virtuel pour cela.

cd /www
mkdir website.com
cd website.com
mkdir html
mkdir html/cgi-bin
mkdir databases
mkdir logs

Puisque nous avons créé un répertoire pour notre site Web, tout ce dont nous avons besoin est un utilisateur qui sera légible pour gérer ce nom de domaine. Nous pouvons le faire avec :

useradd -d /www/your-domain/ domain_user

ou si vous souhaitez restreindre l’accès shell à l’utilisateur, utilisez ceci :

useradd -d /www/your-domain/ -s /sbin/nologin domain_user

Après que l’utilisateur a été ajouté, nous pouvons modifier son mot de passe avec :

passwd

Cet utilisateur n’a toujours pas son “chez-soi” :) endroit qu’il possède, maintenant nous ajoutons ceci :

cd /www && chown domain_user:domain_user website.com

Si vous créez un répertoire “databases”, vous devrez changer le propriétaire en utilisateur mysql, sinon MySQL ne pourra pas écrire dans les fichiers de base de données. Tous les répertoires, sous-répertoires et fichiers traitant des bases de données doivent être détenus par l’utilisateur mysql et nous pouvons le faire avec cette commande :

cd website.com && chown -R mysql:mysql databases

Avec cela, nous avons terminé la création de la structure de répertoire du site Web, maintenant la seule chose qu’il reste à faire est de dire à Apache où se trouve notre site Web et nous avons terminé.

Maintenant, revenons un peu en arrière lorsque nous configurions httpd.conf, nous avons inséré une ligne là-bas :

Include conf/vhosts/*.conf

Maintenant, vous allez comprendre pourquoi nous avons fait cela si vous ne l’avez pas déjà fait. Puisque le dossier n’existe pas encore, nous devrions le créer :

cd /etc/httpd/conf && mkdir vhosts

Maintenant, nous entrons dans le répertoire vhosts :

cd vhosts

et nous créons un nouveau fichier pour notre domaine :

nano website.com.80.conf

Nous devrions insérer ce qui suit dans ce fichier :


    ServerAdmin [email protected]
    ServerName website.com
    ServerAlias www.website.com
    DocumentRoot /www/website.com/html
    ScriptAlias /cgi-bin/ /www/website.com/html/cgi-bin/
    ErrorLog /www/website.com/logs/error_log
    CustomLog /www/website.com/logs/access_log combined

Nous atteignons enfin le point final maintenant où nous avons dit à Apache où se trouve le répertoire de notre site Web, maintenant chaque demande du navigateur pour www.website.com sera lue à partir de /www/website.com/html ; là-dedans, vous devriez mettre vos fichiers ex : index.html. Maintenant, nous pouvons démarrer notre httpd, ou redémarrer s’il était déjà allumé.

service httpd start

ou

service httpd restart

Si vous rencontrez des problèmes avec ce tutoriel ou avec la configuration d’Apache ou de BIND, n’hésitez pas à me contacter. Je suis sûr que j’ai eu ces problèmes et même des problèmes pires - je serai heureux d’aider pendant mon temps libre.

Auteur

: Emir Ibrahimbegovic

E:

[email protected]

W:

www.green.ba

Merci à :

Tony Bhimani, Sébastien Wains, Nayyar Ahmad

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.