Dot.Blog

C#, XAML, Xamarin, UWP/Android/iOS

Dot.Blog passe à SSL…

Ca a été une telle galère – et ce n’est pas terminé – que je veux vous en parler, même si ce n’est pas un scoop à se rouler par terre…quoi que, il y a un truc à apprendre tout de même…

SSL

Google a décidé il y a maintenant un moment que tous les sites qui ne seraient pas en SSL seraient pénalisés dans les recherches. C’est vrai, ils l’ont fait.

Donc comme Google l’a dit et qu’il l’a fait, il faut trouver le temps pour obéir…

Peut-être est-ce une bonne idée pour protéger les utilisateurs, mais pour un blog qui ne fait que publier des pages l’avantage est proche de zéro et je ne crois pas que le nombre des arnaques sur Internet ait baissé depuis ce coup de force de Google…

Mais ça fait marcher le commerce…

Ca a un prix en effet

Première chose il faut une IP fixe, ce qui était inutile pour le type de serveur utilisé pour Dot.Blog. C’est pas gratuit mais il faut le faire.

Puis il faut acheter un certificat, presque rien, mais tout de même. Ca reviendra tous les ans…

Etc. Plus le temps passé. Et à la fin les frais d’hébergement qui ont doublé car une option en entraînant une autre…

Et ça marche moyen au début…

En effet les exigences techniques de SSL, en tout cas vu du côté du browser, c’est strict. Ainsi une page de Dot.Blog qui affiche une image depuis son propre serveur se retrouvera sans le petit verrou sacré tout simplement parce que BlogEngine utilise un “image.axd” dans sa configuration (le fameux truc qui transforme l’image avec les dimensions que je veux dans le texte mais qui quand on clique dessus ouvre l’image à 100%). C’est aussi fragile que ça SSL…

Alors bon BlogEngine n’y est pour rien, ni leur “image.axd”. Non, bien sûr, c’est la faute à l’ignoble plomberie côté serveur et à la complexité inutile du fichier Web.Config…

Ahh le Web.Config !

Donc en passant des heures à chercher ce qui empêchait le petit verrou de s’afficher j’ai fini par trouver : les images retournées par “Image.axd” avaient une adresse en http et non en https…

Bizarre j’ai mouliné les 1014 billets de Dot.Blog pour m’assurer que tous les liens étaient en https…

Oui mais sauf que l’ajout d’un nom dans le Web.Config possède certaines options.

L’une d’entre elles n’était pas utilisée par BlogEngine mais il se trouve que sa valeur est False par défaut… Et quand c’est False IIS ne traite que la terminaison des noms de fichiers passé à l’axd, (le crétin qui a programmé ça devrait être fouetté). Celui-ci prend ainsi les infos par défaut qu’il possède et retourne une adresse en http. Deux en fait, une pour l’image dimensionnée qui apparait dans le texte du billet et une seconde pour l’image 100% disponible quand on clique sur la première.

Génial. Donc une fois l’astuce trouvée tout marche.

<add name="ImageHandler" verb="*" path="image.axd" type="BlogEngine.Core.Web.HttpHandlers.ImageHandler, BlogEngine.Core" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode" allowPathInfo="true"/>

Je vous met la ligne, pas pour remplir, mais pour que vous sachiez de quoi je parle (et aussi parce ça peut sauver des heures perdues à quelqu’un…)

Le truc c’est “allowPathInfo”. Il n’y était pas donc il était à false. En le mettant à true on oblige l’axd ou IIS (c’est assez mystérieux) à traiter le nom de fichier en entier. Et comme dans le billet c’est bien l’adresse https qui est indiquée, elle se retrouve donc bien répercutée. Alléluia ! le Saint Verrou s’affiche !

Pas si simple en fait

Ca marche. Grâce à tout ce boulot et ces dépenses supplémentaires j’espère que vous kiffez à donf le petit verrou qui s’affiche !

Mais cela ne règle pas tout.

Les adresses n’étaient pas en https dans les 1040 billets. il a fallu les télécharger, les mouliner pour ajouter le “s” à http aux bons endroits, puis remettre le tout sur le site…

Mais quand j’écris un billet je passe par Live Writer, et quand je colle une image dans le texte ça fonctionne tout seul, quand je poste il upload l’image et remplace ce simple copier/coller d’image de mon côté en l’appel à la balise <img …> utilisant le fameux axd qui génèrera un HTML avec une image dimensionnée dans le texte et une image cachée disponible sur le clic…

C’est à dire que pour tous les billets que je vais poster maintenant, il faudra après chaque post que je retourne sur le serveur pour modifier toutes les références images qui ont été placées automatiquement en http pour les transformer en https sans en oublier… Sinon pas de petit verrou sur le billet !

Conclusion

Vive le progrès ! Ca marche, mais ça coûte cher, et pour l’instant en plus c’est pas pratique. C’est beau le modernisme. Il faut que je trouve une astuce pour simplifier l’écriture des billets. Comme vous le constaterez dans ce post, il n’y a pas d’image (pas fou !).

Mais au passage durant mes divers essais et bricolages j’ai perdu les commentaires Disqus … j’espère rétablir ça dans la journée sinon vous ne pourrez même pas commenter ce post ! Au prix du petit verrou ça serait dommage de perdre des fonctionnalités !

Je ne mets même pas d’émoticons car je ne suis pas certain d’avoir réglé le problème pour ce type d’images substituées et je veux que vous voyiez le petit verrou sur ce post, j’ai assez galéré pour ça  :–)

Je hais la plomberie Web, les langages Web comme Html, Css, JavaScript, je hais la complexité inutile de tous ces zinzins mal pratique, incohérents, déparaillés, je suis informaticien pas plombier ni mosaïste… Mais restons zen, paix et amour à tous les plombiers et les poseurs de carrelage :-)

Mais bon on parlera de trucs plus fun la prochaine fois alors

Stay Tuned !

NB : Un dernier truc... ça serait trop bête que vous loupiez ce petit détail... Quand vous venez sur Dot.Blog ou n'importe quelle partie de www.e-naxos.com n'oubliez pas de le faire en mettant devant HTTPS:// sinon pas de petit verrou !!! (modifiez vos bookmarks au passage)

blog comments powered by Disqus