39 lines
1.4 KiB
Markdown
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 |