Retour sur : Guides sur la technologie

Comment configurer un sous-domaine sur un même serveur Apache que le domaine principal sur Debian

Ce guide couvre la situation où vous avez déjà acheté un domaine et l'utilisez sur un serveur web. Vous voulez allouer un sous-domaine sur un dossier du même serveur web.

1. Configuration du DNS

Nous voulons servir des fichiers sur notre sous-domaine staging.example.ca

D'abord, ajoutons un enregistrement A pour le sous-domaine au DNS chez notre fournisseur de nom de domaine.

Nous pointons le sous-domaine vers la même adresse IP que le serveur web de notre domaine principal :

Nom d'hôte

Adresse IP

TTL

@

123.456.789.111

Par défaut

staging

123.456.789.111

Par défaut

2. Créer un dossier pour servir des fichiers

Notre domaine principal example.ca sert des fichiers dans ce dossier :

/var/www/html/

Créons un dossier pour servir des fichiers pour notre sous-domaine :

sudo mkdir /var/www/staging

3. Configurer Apache pour le sous-domaine

3.1 Créer le fichier conf Apache

Allons maintenant à /etc/apache2/sites-available/ et créons staging.conf

<VirtualHost *:80> ServerName staging.example.ca ServerAdmin webmaster@localhost DocumentRoot /var/www/staging/ ErrorLog /var/log/apache2/staging/error.log CustomLog /var/log/apache2/staging/access.log combined </VirtualHost> <Directory /var/www/staging/> Require all granted </Directory>

Nous créons un nouvel hôte virtuel dans Apache avec ceci et écoutons sur le port 80. Nous indiquons également à Apache de servir des fichiers pour staging.example.ca depuis /var/www/staging/ .

3.2 Créer des liens symboliques pour les fichiers conf Apache

La prochaine étape dans la configuration d'Apache pour le sous-domaine est d'enregistrer un lien symbolique depuis les fichiers staging.conf situés dans /etc/apache2/sites-available/ vers /etc/apache2/sites-enabled/ . Nous devons faire cela pour qu'Apache sache quels fichiers conf prendre en compte :

sudo ln -s /etc/apache2/sites-available/staging.conf

Alternativement, nous pouvons aussi utiliser la commande d'activation de site Apache a2ensite

sudo a2ensite /etc/apache2/sites-available/staging.conf

3.3 Créer le répertoire des fichiers journaux Apache

La dernière chose sur la liste est de créer notre répertoire de fichiers journaux ou Apache nous lancera une erreur :

sudo mkdir /var/log/apache2/staging

3.4 Redémarrer Apache

Finalement, redémarrons Apache pour que nos modifications prennent effet :

sudo service apache2 restart

4. Enregistrer notre sous-domaine pour un certificat SSL

Avant de faire cette étape, nous devrions attendre que nos modifications DNS se propagent. Cela peut prendre de une heure à un jour. Vous saurez quand les modifications DNS seront en vigueur si vous essayez d'aller sur staging.example.ca et que votre navigateur vous frappe avec un avertissement de sécurité.

Maintenant, enregistrons notre sous-domaine avec certbot et nous serons opérationnels ! Vous devriez lire notre guide sur comment installer certbot sur votre serveur si vous ne l'avez pas déjà.

Nous invoquons certbot et étendons avec notre nouveau sous-domaine :

sudo certbot -d example.ca,staging.example.ca --expand

5. Nous sommes en affaires !

Si tout est bien configuré, vous pouvez commencer à servir des fichiers à /var/www/staging/ et y accéder depuis staging.example.ca

Commençons aujourd'hui