kiv Posted September 27, 2016 Share Posted September 27, 2016 (edited) Bonjour à tous, Je découvre cet outil qui semble assez extraordinaire, donc d'abord bravo aux devs. J'ai fait une première install de Prestashop pour tests, sur un serveur dédié tournant sous Debian. Chacun de mes services web tourne dans un vhost (un conteneur LXC en l'occurence), et au niveau du host j'utilise Nginx comme reverse proxy pour rediriger les requêtes vers le bon vhost en fonction du sous-domaine. La connexion est cryptée entre les clients et le host, avec un certificat valide, et le transit se fait en clair entre le host et les vhosts. Donc en résumé : Client <---[https]---> host (reverse proxy Nginx) <---[http]---> vhost (serveur Nginx <-> Prestashop) Problème : certains contenus transitent en clair jusqu'au client, j'ai donc les avertissements "Contenu mixte", "Mixed content" et autres "Contenu partiellement chiffré". Je précise que je n'ai pas ce problème avec mes autres services, ou que je l'ai réglé avec des méthodes qui ne fonctionnent pas ici. Je ne parviens pas à faire ré-écrire ces requêtes par Nginx. Si j'active le ssl dans Prestashop, donc entre le host et le vhost, le frontend devient inaccessible car on créé une boucle de redirection dont on ne sort plus... Quelqu'un a-t-il déjà résolu ce problème ? Je ne pense pas être le premier à faire tourner Prestashop derrière un reverse proxy en SSL, mais je crois avoir épuisé ce que les moteurs de recherche peuvent me dire avec mes mots clés... Merci d'avance pour votre aide! Edited September 27, 2016 by kiv (see edit history) Link to comment Share on other sites More sharing options...
doekia Posted September 27, 2016 Share Posted September 27, 2016 Prestashop génère un contenu compatible avec son réglage http si ssl non activé (ton cas a priori) et https lorsqu'il est réglé sur ssl et ssl partout. Autrement dit tout les liens et destination des forms ont pour cible http - il est donc normal, a moins que tu ne post-process le flux html que ls pages soient en mixed content. Tu dois activer le ssl sur ton prestashop et donc faire la connexion entre ton nginx et ton ps en ssl (ce qui va te coûter 2 négociation ssl) Link to comment Share on other sites More sharing options...
kiv Posted September 27, 2016 Author Share Posted September 27, 2016 Prestashop génère un contenu compatible avec son réglage http si ssl non activé (ton cas a priori) et https lorsqu'il est réglé sur ssl et ssl partout. Autrement dit tout les liens et destination des forms ont pour cible http - il est donc normal, a moins que tu ne post-process le flux html que ls pages soient en mixed content. Tu dois activer le ssl sur ton prestashop et donc faire la connexion entre ton nginx et ton ps en ssl (ce qui va te coûter 2 négociation ssl) Merci pour cette réponse limpide. C'est un peu ce que je craignais, mais je suppose que c'est un moindre mal en terme de ressources, plutôt que faire crypter l'ensemble du flux par le reverse proxy à la volée... Penses-tu que ça fonctionnera avec un bête certificat auto-signé entre le host et ps, ou bien j'aurai des avertissements de certificat non valide ? Link to comment Share on other sites More sharing options...
doekia Posted September 27, 2016 Share Posted September 27, 2016 (edited) Dans la mesure où c'est le canal entre ton nginx et ton prestashop qui verra l'auto-signé, a condition de régler le proxy pour ne pas vérifier le certificat, aucun problème. Par contre 2 nego ssl c'est minimum 2x180ms (si tu as des bêtes de courses). A ta place j'investirai dans une ip secondaire (2€/mois) et je me passerais du reverse proxy Edited September 27, 2016 by doekia (see edit history) 1 Link to comment Share on other sites More sharing options...
kiv Posted September 27, 2016 Author Share Posted September 27, 2016 (edited) Parfait, ça fonctionne. J'aurais pu le tenter plus tôt, au lieu de chercher à tout prix la solution idéale... Je prends volontiers les conseils sur l'architecture la plus rapide : pour l'instant je teste sur un serveur perso très basique (Kimsufi), tout en essayant d'avoir un prototype "réaliste". La solution qui entrera en prod aura certainement un serveur dédié. Si ce n'est pas le cas je retiens l'idée de l'IP secondaire. Merci encore pour tes réponses rapides et efficaces. Edited September 27, 2016 by kiv (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now