GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment configurer des hôtes virtuels Apache sur Ubuntu 20.04

Un hôte virtuel est une directive de configuration Apache qui vous permet d'exécuter plusieurs sites Web sur un seul serveur. Avec les hôtes virtuels, vous pouvez spécifier la racine du document du site (le répertoire contenant les fichiers du site Web), créer une politique de sécurité distincte pour chaque site, utiliser différents certificats SSL, et bien plus encore.

Cet article décrit comment configurer les hôtes virtuels Apache sur Ubuntu 20.04.

Prérequis #

Assurez-vous que vous avez satisfait aux exigences suivantes avant de continuer avec le guide :

  • Un ou plusieurs noms de domaine pointant vers l'adresse IP de votre serveur public.
  • Apache installé sur votre système Ubuntu.
  • Vous êtes connecté en tant que root ou utilisateur avec des privilèges sudo.

Création de la structure de répertoire #

La racine du document est le répertoire dans lequel les fichiers du site Web d'un nom de domaine sont stockés et servis en réponse aux demandes. Vous pouvez définir la racine du document à n'importe quel emplacement de votre choix. Dans cet exemple, nous utiliserons la structure de répertoires suivante :

/var/www/
├── domain1.com
│   └── public_html
├── domain2.com
│   └── public_html

Chaque domaine hébergé sur le serveur aura sa racine de document définie sur /var/www/<domain_name>/public_html .

Commencez par créer le répertoire racine du domaine :

sudo mkdir -p /var/www/domain1.com/public_html

Nous allons également créer un index.html fichier dans le répertoire racine des documents du domaine qui s'affichera lorsque vous visiterez le domaine dans votre navigateur :

/var/www/domain1.com/public_html/index.html
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to domain1.com</title>
  </head>
  <body>
    <h1>Success! domain1.com home page!</h1>
  </body>
</html>

Étant donné que les commandes ci-dessus sont exécutées en tant qu'utilisateur sudo, les fichiers et répertoires nouvellement créés appartiennent à root. Pour éviter tout problème d'autorisation, changez la propriété du répertoire racine du document de domaine et de tous les fichiers du répertoire pour l'utilisateur apache (www-data ) :

sudo chown -R www-data: /var/www/domain1.com

Création d'un numéro d'hôte virtuel

Sur les systèmes Ubuntu, les fichiers de configuration des hôtes virtuels Apache se trouvent dans /etc/apache2/sites-available annuaire. Ils peuvent être activés en créant des liens symboliques vers le /etc/apache2/sites-enabled répertoire, qu'Apache lit au démarrage.

Ouvrez l'éditeur de texte de votre choix et créez le fichier de configuration de base de l'hôte virtuel suivant :

/etc/apache2/sites-available/domain1.com.conf
<VirtualHost *:80>
    ServerName domain1.com
    ServerAlias www.domain1.com
    ServerAdmin [email protected]
    DocumentRoot /var/www/domain1.com/public_html

    <Directory /var/www/domain1.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/domain1.com-error.log
    CustomLog ${APACHE_LOG_DIR}/domain1.com-access.log combined
</VirtualHost>
  • ServerName :Le domaine qui doit correspondre à cette configuration d'hôte virtuel. Il doit s'agir de votre nom de domaine.
  • ServerAlias  :Tous les autres domaines ou sous-domaines qui doivent correspondre à cet hôte virtuel, tels que www sous-domaine.
  • DocumentRoot :Le répertoire à partir duquel Apache servira les fichiers du domaine.
  • Options  :Cette directive contrôle quelles fonctionnalités du serveur sont disponibles dans un répertoire spécifique.
    • -Indexes  :Empêche les listes de répertoires.
    • FollowSymLinks :Lorsque cette option est activée, Apache suivra les liens symboliques.
  • AllowOverride :Spécifie les directives déclarées dans le .htaccess fichier peut remplacer les directives de configuration.
  • ErrorLog , CustomLog  :spécifie l'emplacement des fichiers journaux.

Vous pouvez nommer le fichier de configuration comme vous le souhaitez, mais la meilleure pratique consiste à utiliser le nom de domaine comme nom du fichier de configuration de l'hôte virtuel.

Pour activer le nouveau fichier d'hôte virtuel, utilisez le a2ensite script d'assistance qui crée un lien symbolique entre le fichier de l'hôte virtuel et le sites-enabled répertoire :

sudo a2ensite domain1.com

L'autre option consiste à créer manuellement un lien symbolique comme indiqué ci-dessous :

sudo ln -s /etc/apache2/sites-available/domain1.com.conf /etc/apache2/sites-enabled/

Une fois cela fait, testez la configuration pour toute erreur de syntaxe avec :

sudo apachectl configtest

S'il n'y a pas d'erreurs, vous verrez le résultat suivant :

Syntax OK

Redémarrez le service Apache pour que les modifications prennent effet :

sudo systemctl restart apache2

Enfin, pour vérifier que tout fonctionne comme prévu, ouvrez http://domain1.com dans votre navigateur, et vous verrez le contenu du index.html page :


Ubuntu
  1. Comment configurer des hôtes virtuels Apache sur Ubuntu 18.04

  2. Comment configurer des hôtes virtuels Apache sur CentOS

  3. Configurer les hôtes virtuels Apache sur Ubuntu 18.04 - Processus étape par étape ?

  4. Ubuntu - Comment définir une adresse IP statique dans Ubuntu ?

  5. Configurer des hôtes virtuels Apache sur le système d'exploitation Ubuntu

Comment supprimer un répertoire dans Ubuntu 20.04

Comment configurer l'hôte virtuel Apache sur Ubuntu 20.04 LTS

Comment installer Apache Server et configurer des hôtes virtuels sur Ubuntu 22.04

Comment configurer les hôtes virtuels Apache sur Debian 11

Comment configurer les hôtes virtuels Apache sur Ubuntu 18.04

Comment configurer des hôtes virtuels Apache sur Ubuntu 20.04