Bonjour !
Après de nombreux essais de configuration infructueux, je me permets d'écrire sur ce forum, en espérant que quelqu'un puisse apporter une piste à mon souci.
Sur mon serveur (VPS de chez OVH), j'ai mis en place deux sites, appelons-les site1.com et site2.com
Dans mon navigateur je tente d'entrer les URL suivantes pour bien vérifier que toutes les redirections amènent bien vers le HTTPS avec WWW, à savoir https://www.site1.com et https://www.site2.com
Pour Site1
- http://www.site1.com OK
- https://site1.com --> Problème, aucune redirection
- http://site1.com OK
Pour Site2
- http://www.site2.com OK
- https://site2.com --> Problème, aucune redirection
- http://site2.com --> Problème, redirige vers https://www.site1.com (Oui, site1, alors qu'il n'y a aucun lien entre les deux)
Deux problèmes majeurs se posent donc, les sites HTTPS sans WWW ne redirigent pas vers le WWW. Et le HTTP sans WWW de site2 redirige vers site1.
Voici mes fichiers de conf apache
site1.conf
site2.conf
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 <VirtualHost *:80> Redirect permanent / https://www.site1.com/ ServerAdmin webmaster@localhost ServerName www.site1.com ServerAlias www.site1.com DocumentRoot /var/www/apps/site1 <Directory /var/www/apps/site1> AllowOverride All RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] </Directory> </VirtualHost> <VirtualHost *:443> ServerAdmin webmaster@localhost ServerName www.site1.com ServerAlias www.site1.com DocumentRoot /var/www/apps/site1 <Directory /var/www/apps/site1> AllowOverride All RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] </Directory> SSLEngine On ***Conf générée par letsencrypt pour le SSL*** </VirtualHost>
Le fichier hosts
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 <VirtualHost *:80> Redirect permanent / https://www.site2.com/ ServerAdmin webmaster@localhost ServerName www.site2.com ServerAlias www.site2.com DocumentRoot /var/www/apps/site2 <Directory /var/www/apps/site2> AllowOverride All RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] </Directory> </VirtualHost> <VirtualHost *:443> ServerAdmin webmaster@localhost ServerName www.site2.com ServerAlias www.site2.com DocumentRoot /var/www/apps/site2 <Directory /var/www/apps/site2> AllowOverride All RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] </Directory> SSLEngine On ***Conf générée par letsencrypt pour le SSL*** </VirtualHost>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 127.0.0.1 localhost ip.ip.ip.ip vps333333.ovh.net vps333333 ip.ip.ip.ip site1.com ip.ip.ip.ip site2.com
A noter que je n'ai rien dans mon .htaccess. J'ai testé pas mal de choses avec mais rien ne fonctionnait correctement.
Un grand merci d'avance à ceux qui prendront le temps de réfléchir à mon problème. Si vous avez la moindre piste n'hésitez pas
Partager