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