SSL redirige l’utilisateur vers un site Web incorrect sur apache

Je héberge plus de 100 sites Web sur 2 serveurs différents. Certains de mes clients ont récemment remarqué que lorsqu’ils accèdent à https://theirwebsite.com , s’ils ne disposent PAS de SSL sur leur site Web, ils redirigent vers le premier site Web SSL dans le fichier de configuration apache. J’ai fait quelques lectures et découvert que les sites Web SSL avaient besoin de leurs propres adresses IP. J’ai donc changé les adresses IP de mes sites Web SSL. Cependant, j’ai remarqué que le problème persiste. Il est possible que des sites Web SSL doivent encore être supprimés ou modifiés dans httpd.conf, mais existe-t-il un moyen d’empêcher que cela se produise? Puis-je trouver un moyen de créer des sites Web sans https redirect vers rien si https est utilisé?

il redirige vers le premier site Web SSL dans le fichier de configuration apache.

Cela est dû au fait qu’il existe 2 ensembles d’hôtes virtuels pour apache: 1 qui écoute le port 80 (non SSL) et l’autre qui écoute le port 443 (SSL). Toute demande non SSL est envoyée aux hôtes virtuels qui écoutent le port 80, et toute demande SSL est envoyée aux clients qui écoutent le port 443. Lorsqu’une demande est faite pour un hôte non défini dans l’un des vhosts, il est par défaut le vhost “par défaut”, qui devient le tout premier qui est défini (par exemple, le premier qui apparaît dans votre fichier vhost).

Pour éviter cela, vous pouvez soit définir un SSL vhost défini pour chacun de vos sites Web non-SSL, soit créer un nouveau vhost “par défaut” dans votre fichier SSL qui ne fait rien d’autre que redirect vers un fichier non-SSL:

RewriteEngine On RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [L,R]