Modifications pour le document Mettre en place un sous-domaine

Modifié par Clément AUBIN le 2021/04/18 11:55

Depuis la version 3.27
modifié par Clément AUBIN
sur 2021/04/18 10:39
Commentaire de modification : Il n'y a aucun commentaire pour cette version
À la version 4.2
modifié par Clément AUBIN
sur 2021/04/18 10:49
Commentaire de modification : Il n'y a aucun commentaire pour cette version

Résumé

Détails

Propriétés de la Page
Contenu
... ... @@ -120,9 +120,12 @@
120 120  
121 121  {{code language="nginx"}}
122 122  server {
123 - listen 80; // On écoute sur le port 80 (le port utilisé par défaut avec HTTP)
124 - server_name monservice.atilla.org; // On répond aux requêtes qui pointent vers le domaine monservice.atilla.org
125 - return 301 https://monservice.atilla.org$request_uri; // On redirige chaque requête vers son équivalent HTTPs
123 + # On écoute sur le port 80 (le port utilisé par défaut avec HTTP)
124 + listen 80;
125 + # On répond aux requêtes qui pointent vers le domaine monservice.atilla.org
126 + server_name monservice.atilla.org;
127 + # On redirige chaque requête vers son équivalent HTTPs
128 + return 301 https://monservice.atilla.org$request_uri;
126 126  }
127 127  {{/code}}
128 128  
... ... @@ -130,30 +130,30 @@
130 130  
131 131  {{code language="nginx"}}
132 132  server {
133 - // On écoute sur le port 443, qui est celui par défaut pour le HTTPs.
134 - // Les deux autres attributs ssl et http2 indiquent :
135 - // * Qu'on va chiffrer la connexion avec SSL (le principe du HTTPs)
136 - // * Qu'on supporte le protocole HTTP/2
137 - listen 443 ssl http2;
136 + # On écoute sur le port 443, qui est celui par défaut pour le HTTPs.
137 + # Les deux autres attributs ssl et http2 indiquent :
138 + # * Qu'on va chiffrer la connexion avec SSL (le principe du HTTPs)
139 + # * Qu'on supporte le protocole HTTP/2
140 + listen 443 ssl http2;
138 138  
139 - // Comme avant, on répond aux requêtes qui pointent vers le domaine monservice.atilla.org
142 + # Comme avant, on répond aux requêtes qui pointent vers le domaine monservice.atilla.org
140 140   server_name monservice.atilla.org;
141 141  
142 - // On indique encore une fois qu'on va utiliser le SSL, et on fournit les fichiers qui
143 - // sont nécessaires pour authentifier le serveur et chiffrer la connexion.
145 + # On indique encore une fois qu'on va utiliser le SSL, et on fournit les fichiers qui
146 + # sont nécessaires pour authentifier le serveur et chiffrer la connexion.
144 144   ssl on;
145 145   ssl_certificate_key /etc/letsencrypt/live/monservice.atilla.org/privkey.pem;
146 146   ssl_trusted_certificate /etc/letsencrypt/live/monservice.atilla.org/chain.pem;
147 147   ssl_certificate /etc/letsencrypt/live/monservice.atilla.org/fullchain.pem;
148 148  
149 - // On configure l'emplacement des logs
152 + # On configure l'emplacement des logs
150 150   access_log /var/log/nginx/monservice.atilla.org/access.log;
151 151   error_log /var/log/nginx/monservice.atilla.org/error.log;
152 152  
153 - // C'est ici que la "magie" opère :)
154 - // La directive proxy_pass nous permet de rediriger tout le traffic vers la machine virtuelle qui correspond
155 - // Les directives proxy_set_header permettent d'ajouter des en-têtes spécifiques à destination de la machine virtuelle,
156 - // par exemple pour que celle-ci comprenne qu'elle se trouve derrière un frontal web.
156 + # C'est ici que la "magie" opère :)
157 + # La directive proxy_pass nous permet de rediriger tout le traffic vers la machine virtuelle qui correspond
158 + # Les directives proxy_set_header permettent d'ajouter des en-têtes spécifiques à destination de la machine virtuelle,
159 + # par exemple pour que celle-ci comprenne qu'elle se trouve derrière un frontal web.
157 157   location / {
158 158   proxy_set_header Host $host;
159 159   proxy_set_header X-Forwarded-For $remote_addr;
... ... @@ -164,8 +164,36 @@
164 164  
165 165  ===Création du dossier de logs===
166 166  
170 +Comme vu dans la configuration précédente, on va stocker les logs Nginx dans ##/var/log/nginx/monservice.atilla.org##. Par défaut, ce dossier n'existe pas et il faut le créer (sinon, Nginx ne démarrera pas).
171 +
172 +{{code language="shell"}}
173 +mkdir /var/log/nginx/monservice.atilla.org
174 +{{/code}}
175 +
167 167  ===Activation de la configuration Nginx===
168 168  
178 +Finalement, il faut s'assurer qu'Nginx prendra en compte notre fichier de configuration. Si vous regardez dans ##/etc/nginx##, vous verrez deux dossiers :
179 +* ##sites-available##: celui dans lequel la configuration a été créée
180 +* ##sites-enabled##: celui dans lequel la configuration doit être référencée pour être active
181 +
182 +Pour activer la configuration en question, rien de plus simple, on fait juste un lien symbolique dans ##sites-enabled## vers le fichier qui convient :
183 +
184 +{{code language="shell"}}
185 +ln -sf /etc/nginx/sites-available/monservice.atilla.org /etc/nginx/sites-enabled/atilla.org/
186 +{{/code}}
187 +
188 +Avant de terminer cette manip, on vérifie que tout est bon au niveau de la configuration, et que Nginx ne va pas planter au redémarrage :
189 +
190 +{{code language="shell"}}
191 +nginx -t
192 +{{/code}}
193 +
194 +Et finalement, on redémarre !
195 +
196 +{{code language="shell"}}
197 +systemctl restart nginx
198 +{{/code}}
199 +
169 169  ==Méthode plus ou moins automatique==
170 170  
171 171  On a un [[super projet sur GitLab>>https://gitlab.atilla.org/adminsys/nginx-config-generator]] qui permet d’effectuer les actions de la méthode manuelle de manière automatique. Ce projet est présent sur ##/root/nginx-config-generator## sur Bill, voici comment l’utiliser rapidement. En cas de besoin, référez vous au ##README.md## du projet.