This repository has been archived on 2021-12-22. You can view files and clone it, but cannot push or open issues or pull requests.
docInfra/nginx.md

39 lines
1.4 KiB
Markdown

# Installation d'un serveur NGINX
Nginx est un service qui permet de servir des fichiers via le protocole HTTP(S). C'est un équivalent au serveur Apache.
Pour l'installer il suffit de lancer `sudo apt install -y nginx`. On va ensuite créer le dossier `/DATA/nginx` afin de stocker les fichiers de configuration des sites et les logs.
Il faut créer un lien symbolique des fichiers de config dans `/DATA/nginx` vers `/etc/nginx/sites-enabled` pour activer le site. On fait `sudo ln -s /DATA/nginx/<fichier> /etc/nginx/sites-enabled/<fichier>` puis on recharche le serveur `sudo systemctl reload nginx`.
A chaque modification de la configuration il faut lancer sudo systemctl reload nginx pour prendre en compte les modification.
Ci-après il y a un exemple de configuration simple pour les sites statiques avec https :
```
server {
listen 80;
listen [::]:80;
server_name example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
server_name example.com;
root /DATA/root;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
```
Pour obtenir le certificat ssl il faut stopper le service nginx et lancer sudo certbot certonly --standalone -d example.com