#1 Le 08/07/2013, à 16:44
- patanar
Redirection http vers https apache avec sous-domaines virtualhost
Alors voilà, j'ai créé 3 virtualhosts:
mondomaine.com
sous1.mondomaine.com
sous2.mondomaine.com
Ces trois virtualhosts sont en https 443 et jusque là tout fonctionne parfaitement. Mais j'ai un petit soucis avec la redirection.
Lorsque j'emploie cette formule:
<VirtualHost *:80>
ServerName www.example.com
Redirect / https://www.example.com/
</VirtualHost >
<VirtualHost *:443>
ServerName www.example.com
# ... insérer ici la configuration SSL
</VirtualHost >
dans les 3 vritualhosts j'ai un message d'erreur m'indiquant qu'apache doit emprunter que la première redirection. J'ai trouvé ceci comme explication:
The reason is that the SSL protocol is a separate layer which encapsulates the HTTP protocol. So the SSL session is a separate transaction, that takes place before the HTTP session has begun. The server receives an SSL request on IP address X and port Y (usually 443). Since the SSL request does not contain any Host: field, the server has no way to decide which SSL virtual host to use. Usually, it will just use the first one it finds, which matches the port and IP address specified.
You can, of course, use Name-Based Virtual Hosting to identify many non-SSL virtual hosts (all on port 80, for example) and then have a single SSL virtual host (on port 443). But if you do this, you must make sure to put the non-SSL port number on the NameVirtualHost directive, e.g.
Cela dit, je me demande s'il n'y aurait pas une autre alternative, car pour l'instant mes deux sous-domaines sont redirigés vers mondomaine.com ? J'ai essayé avec .htaccess mais la c'est le même problème que j'ai apparemment car je doit le mettre à la racine du www. Il y aurait aussi peut-être à même sites-available mondomaine.com et mes sou1 et sous2.
Mais aussi j'ai pensé à quelque chose qui serait de retirer l'écoute du port 80 sous apache et de fermer l'entrant de celui-ci dans IP table. Mais je me demandais s'il n'y aurait pas des répercussions pour le référencement et je crois que lorsque l'on inscrit le nom de domaine dans la barre d'adresse d'un navigateur c'est le http qui est par défaut.
En tout cas si vous avez une solution sans avoir à passer par plusieurs adresse IP et l'achat de plusieurs certificat SSL je suis preneur.
Merci
Dernière modification par patanar (Le 08/07/2013, à 16:45)
Hors ligne