Configurer nginx
Les étapes d'installation
Pour mettre en ligne un site web, je vous recommande d'utiliser nginx sur un serveur. Ici, vous pourrez suivre les étapes d'installation sur un serveur debian (apt), et l'installation en prime d'un certificat SSL.
# Installations
sudo apt install certbot python3-certbot-nginx rsync
# Montrer le status de nginx
systemctl status nginx.service
# Éditer la configuration du domaine
sudo nano /etc/nginx/sites-available/MON-DOMAINE.COM
Voici un modèle de configuration, prenant en compte les appels
include virtual=""
du module _ssi de nginx, présent dans les
pages HTML créées.
chemins relatifs sur les fichiers du template (logo, styles.css...),
il est préférable d'utiliser l'adresse web de la page d'erreur
(n'oubliez pas de la créer, par exemple avec la commande
tyto new 404
)
server {
listen 80;
listen [::]:80;
server_name MON-DOMAINE.COM;
root /var/www/MON-DOMAINE.COM/www/;
index index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ =404;
}
ssi on;
ssi_last_modified on;
absolute_redirect off;
error_page 404 http://MON-DOMAINE.COM/404.html;
}
Avant de continuer, vous devez avoir créé le dossier 'www' :
/var/www/MON-DOMAINE.COM/www/
sur le serveur, et avoir transféré
les fichiers du site dans ce dossier.
# Créer le dossier sur le serveur
sudo mkdir -p /var/www/MON-DOMAINE.COM/www
# Synchroniser (n = simuler dans l'argument)
rsync -aznP --rsh="ssh -i ~/.ssh/ma-clé_rsa" \
/var/www/MON-DOMAINE.COM/www/* \
[UserName]@[IP ou HostName]:/var/www/MON-DOMAINE.COM/www
# Activer le domaine
sudo ln -s /etc/nginx/sites-available/MON-DOMAINE.COM /etc/nginx/sites-enabled/
# Vérifier la configuration
sudo nginx -t
# Relancer nginx, si tout va bien
sudo systemctl reload-or-restart nginx.service
À ce stade, vous devriez pouvoir accéder à votre site, soit par
l'adresse IP du serveur, soit par le nom de domaine pointant vers lui.
Il ne reste plus qu'à créer un certificat SSL, via la commande
sudo certbot
de Let's Encrypt, qui devrait finir le travail tout
seul.