web-dev-qa-db-fra.com

Redirection d'URL spécifique de HTTPS vers HTTP

Longue lurker, premier appelant ...

J'ai un backend comme admin.mysite.com qui peut utiliser HTTPS (avec un certificat installé, etc.) - mais ce portail admin est un backend CMS pour un certain nombre de sites clients (ie www.clientsite.com) hébergés sur les mêmes serveurs.

Tout fonctionne bien ici, mais le problème est que lorsqu'un utilisateur tente d'accéder à https://www.clientsite.com il se plaint de SSL (en raison du caractère générique que j'ai installé pour *.mysite.com). Je voudrais trouver un moyen de prendre cette demande et de la rediriger vers HTTP afin qu'ils ne voient pas cette erreur de certificat.

Je ne peux pas le faire via une terminaison SSL, car HAProxy décrypte la demande au niveau de l'équilibreur de charge et ne la transmet pas au serveur. C’est la seule façon pour HAProxy de lire les en-têtes HTTP, je crois, afin que le client puisse toujours voir une erreur SSL ici.

Ma seule autre pensée est d’essayer une règle de réécriture dans Apache - mais conditionnelle.

Ainsi, par exemple, *.mysite.com peut utiliser SSL - mais toute autre demande qui ne possède pas ce domaine doit être forcée à revenir à HTTP sans afficher cet avertissement de certificat fastidieux.

Est-ce possible?

3
Jason

Je ne ferais pas ssl à moins que ce soit un CERT officiel SHA2 et à moins que vous ayez le contrôle des redirections de dossiers httaccess. Effectuer une recherche sur Google pour: "FORCING ssl via htaccess"

(Notez que Google Chrome peut vous afficher une erreur sur un CERT s'il s'agit d'un SHA1).

1
Michael

Ma seule autre pensée est d’essayer une règle de réécriture dans Apache - mais conditionnelle.
:
Est-ce possible?

Malheureusement non. L'utilisateur voit l'erreur de certificat longtemps avant que la demande ne rencontre votre code côté serveur.

Le seul moyen de corriger une erreur de certificat consiste à corriger le certificat. Si ce n'était pas le cas, la sécurité pourrait être contournée.

le problème est lorsqu'un utilisateur essaie d'aller à https://www.clientsite.com

Bien que, pourquoi l'utilisateur essayer d'aller à https://...? Est-ce qu'ils suivent un lien?

1
DocRoot