Bonjour,
Je suis en train de mettre en place l'automatisation du renouvellement automatique des certificats let's encrypt.
Sur mes sites, j'ai une redirection qui redirige l'http sur l'https.
Je le fais de cette manière :
J'ai ensuite sur le port https une redirection vers le serveur back qui contient l'application (gitlab, nexus...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 RewriteEngine on RewriteCond %{HTTPS} on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Lorsque le challenge se fait avec let's encrypt, il le fait sur l'url : http://[monsite]/.well-known/acme-challenge/. du coup, il est redirigé vers l'application qui ne contient pas l'uri, j'ai donc une page 404.
Le challenge ne se fait pas et mon renouvellement n'est pas effectué.
J'ai donc créé dans /var/www/html de mon apache ce répertoire. J'essaie maintenant que quand l'URI ne contient pas .well-known/acme-challenge cela redirige sur le serveur.
Voici donc ma configuration :
Quand je supprime ma redirection, j'arrive bien à aller dans le répertoire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <VirtualHost *:80> ServerName [monDomaine] ServerAlias [monDomaineWWW] DocumentRoot /var/www/html #Alias "/.well-known/acme-challenge/" "/var/www/html/.well-known/acme-challenge/ #RewriteEngine on #RewriteCond %{HTTPS} !on #RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} <If "%{REQUEST_URI} !~ m#\.well-known\/acme-challenge\/.*m#"> RewriteEngine on RewriteCond %{HTTPS} on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} </If> </VirtualHost>
Je ne comprend pas pourquoi ma regex ne marche pas.
Pouvez vous m'aider s'il vous plait ?
Merci d'avance !
Partager