So long CloudFlare, and thanks for all the fissh

Souhaitant me mettre aux Service Workers, notamment pour remplacer appcache pour le support offline de mon jeu esviji, j’avais besoin de passer en HTTPS. Let’s Encrypt étant à l’époque toujours en beta, et les tutoriels de mise en œuvre pas légion et peu compréhensibles, j’avais choisi la solution de facilité avec CloudFlare, que je quitte aujourd’hui pour mes propres certificats Let’s Encrypt sur mon hébergement mutualisé AlwaysData.

CloudFlare est un service qui fonctionne comme un proxy pour le site, avec beaucoup de fonctionnalités destinées à améliorer la performance et la sécurité, dont notamment la mise en place de HTTPS. Rien à faire sur le site, qui peut rester en HTTP, il faut juste faire pointer les DNS chez CloudFlare plutôt que chez l’hébergeur du site. Et quand même bien parcourir les nombreuses options de configuration dans tous les sens, pour bien choisir exactement ce que l’on veut.

Un schéma montrant l'apport de Cloudflare

Un schéma montrant l’apport de Cloudflare

J’ai oublié de préciser que l’offre de base, qui inclue le HTTPS, est gratuite, difficile de faire plus compétitif !

Pourtant, la magie a ses limites, et si je suis convaincu que CloudFlare peut faire beaucoup de bien à des sites pas spécialement optimisés, il n’a pas beaucoup de sens pour un site où les optimisations de performance sont déjà très poussés, comme chez moi. L’effet peut même être inverse, puisque l’on perd une grande partie du contrôle, notamment sur les en-têtes associées aux requêtes HTTP. J’ai donc choisi de quitter CloudFlare.

J’ai été d’autre part largement motivé par la stabilisation de Let’s Encrypt, et surtout l’apparition d’un tutoriel Let’s Encrypt dédié à mon hébergeur AlwaysData, utilisant le client simp_le.

J’ai ainsi pu mettre en place un certificat Let’s Encrypt sur https://nicolas-hoizey.com/ en moins d’une heure, et je n’ai plus qu’à faire de même sur https://esviji.com/ et https://play.esviji.com/.

Je précise juste qu’il faut prendre une IP fixe pour pouvoir mettre du SSL, soit 5 € par mois en plus de votre tarif d’hébergement.

Une astuce à connaître, enfin, si vous êtes aussi sur AlwaysData. Si vous voulez rediriger tout le trafic HTTP vers le HTTPS, vous trouverez sans doute ce type de configuration Apache dans des docs en ligne :

RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://nicolas-hoizey.com/$1#s [QSA,R=301,L]

Il se trouve que la RewriteCond ne fonctionne pas chez AlwaysData, où il faut plutôt utiliser celle-ci :

RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*) https://nicolas-hoizey.com/$1 [QSA,R=301,L]

Un grand merci à Martin pour le tutoriel, et Héloïse pour l’aide sur la bonne configuration Apache pour les redirections.

Si vous voulez signaler une erreur ou proposer une modification de ce texte, n'hésitez pas à l'éditer directement à la source sur Github.

Webmentions (?)

No webmentions were found