wordpress SSL

+8 votes
17,612 vues
question 9 Janvier 17 dans Tous les CMS par atlas (293 points)  

J'ai installé un certificat SSL sur un domaine.

Je télécharge un site de démonstration avec des pages html, des css, des images. Jusque là , tout va bien, cadenas vert près du nom dans la barre du navigateur

Ensuite j'installe Wordpress et là, cadenas rouge, le domaine n'est pas sécurisé. Si on clique dessus, alerte , sauve qui peut , fuyez

D'où vient le problème ?

commentée 9 Janvier 17 par tdurantet (176 points)  
j'ai le même problème avec Joomla. Il faut déjà rapatrier les css et images qui sont sur d'autres domaines non https. C'est beaucoup de travail pour y arriver et encore beaucoup en maintenance ... J'ai essayé d'acheter une version mais il faut recommencer à chaque mise à jour. Si 123.fr pouvait trouver une astuce, nous lui en serions infiniment reconnaissants ..
commentée 9 Janvier 17 par ladmin (2,272 points)  
je vois bien à quoi devrait ressembler cet outil.  Il existe surement déjà. Avez vous cherché ?
commentée 9 Janvier 17 par ladmin (2,272 points)  
vous pouvez demander de l'aide au sav de la ssl ; il peut effectuer des recherches exhaustives dans les scripts et les bases de données ...
commentée 11 Janvier 17 par ladmin (2,272 points)  
c'est difficile de faire un outil parfait mais traiter 99% des cas est possible et c'est ce que nous avons préparé. Le lien sera posé dans le filemanager avant le we. Tout ce qui ne va pas sera dans le répertoire /http sous www. Accessible il suffira de pointer dessus au lieu d'appeler un serveur externe.. Ca ne sera pas du tout limité à wordpress ... Mais ça ne marche que pour les fichiers fixes. Si c'est un compteur et que le site du compteur n'a pas de https, alors il n'y aura rien à faire d'autre que vous passer du compteur
commentée 25 Janvier 17 par anvers (269 points)  
je dois reconnaître qu'à part le compteur pour lequel il fallait payer, tout s'est bien passé. Les compteurs c'est ringard.

2 Réponses

+1 vote
réponse 9 Janvier 17 par paco (436 points)  

J'ai résolu ce problème en cherchant toutes les occurrences de

ajax.aspnetcdn.com
fonts.googleapis.com
static.xx.fbcdn.net
www.youtube.com
apis.google.com
fonts.gstatic.com
translate.google.com
www.facebook.com
 

et en remplaçant http par https. Certains le sont déjà, d'autres existaient sous les 2 formes. Pour les scripts, utilisez la recherche de Windows. Pour la base, phpmyadmin, option rechercher en haut de la liste de la base.

commentée 9 Janvier 17 par ladmin (2,272 points)  
Il peut y en avoir d'autres, ça dépend des thèmes et des modules. Comment faites vous si le https n'existe pas ?
commentée 13 Janvier 17 par atlas (293 points)  
merci de votre aide.
+7 votes
réponse 12 Janvier 17 par ladmin (2,272 points)  
editée 13 Janvier 17 par ladmin

A defaut de proposer une solution générale, voilà ce que nous avons fait

** Si vous voulez installer wordpress ou joomla et que votre site est en ssl , vous aurez une version compatible et contenant la plupart des modules que nos usagers utilisent. Le SAV suivra les cas particuliers.

Plus généralement :

Solution janvier adoptée pour remplacer les https qui n'ont pas d'équivalent en https :
- nous créons le répertoire /http/
- tous les fichiers externes en http sont downloadés dans http
- les urls http://dir1/dir2/dir3/fic.xx deviennent  /http/dir1/dir2/dir3/fic.xx
- ils ont partout été remplacés pour wordpress et joomla. Ils peuvent l'être avec le contenu courant de /www de n'importe quel site.
- un cron surveille ces fichiers et les met à jour automatiquement en cas d'évolution. Cela peut poser des problèmes de sécu, les mêmes que sans ces modifs pour la SSL.

Solution pansement pour février :
Pour les cas très difficiles - c'est facile d'inventer du code non convertible - leurs configurations Apache contiendront des instructions sustitute afin de choper les urls dynamiquement. Le module a été modifié pour créer dynamiquement les importations avec juste quelques restrictions dues à la sécu. Nous testons, ce sera bon pour lundi.

Solution définitive : un programme gérera tout cela automatiquement et donnera des indications pour passer au  mode performant.

Difficultés :

- Il n'est toujours pas possible d'appeler un site qui produit des résultats dynamiques sans passer par la ssl. Il n'est pas question de leur installer un proxy. C'est le boulot de ces sites. Quittez les s'ils ne conviennent plus, les compteurs personne n'y croit ...

- Pour l'instant, si vous avez déjà un répertoire http sur votre site, il y aura collision. Le programme signalera la difficulté mais ne proposera pas de solution. Voyez avec le SAV. Ultérieurement, ce nom sera un paramètre fixe, peut être non modifiable après l'installation.

- Il y a le problème des mises à jour automatiques de CMS qui nécessiteront parfois des passages au mode substitute le temps de l'adaptation.

- Il faut un certain suivi. Si vous ne pouvez pas, nous connaissons quelques programmeurs capables de vous aider sur devis au temps passé ( à voir entre vous )

EDIT 1 :

Exemple : Un site appelle 2 fichiers externes que vous trouvez grâce à l'outil de vérification:

  • http://sslsource.dom/dir1/dir2/truc.js qui fonctionne aussi en https
  • http://nosslsource.dom/dira/dirb/dirc/bidule.js qui ne fonctionne pas en https

la config d'apache contiendra donc en plus :

<directory /www.mysiteweb.com/www/>
# auto toujours
Substitute      s|http://mysiteweb.com/|https://www.mysiteweb.com/|i
Substitute      s|http://www.mysiteweb.com/|https://www.mysiteweb.com/|i

# pour chaque source existant aussi en https
Substitute      s|http://sslsource.dom/|https://sslsource.dom/|i

# pour chaque source n'existant pas en https
Substitute      s|http://nosslsource.dom/|/http/nosslsource.dom/|i
</directory>

 

Après avoir téléchargé http://nosslsource.dom/dira/dirb/dirc/bidule.js sous /http , ce qui donnera des répertoires et finalement le fichier recherché et inaccessible en https

 

  • /http/nosslsource.dom/
  • /http/nosslsource.dom/dira/
  • /http/nosslsource.dom/dira/dirb/
  • /http/nosslsource.dom/dira/dirb/dirc/
  • /http/nosslsource.dom/dira/dirb/dirc/bidule.js

Bien entendu, si le site même est en https, le contenu du répertoire http sera aussi de l'https.

Notre version du module substitute importera au fil de l'eau les fichiers manquants. Il faut ensuite maintenir ce répertoire en supprimant soi-même les fichiers obsolètes. Pas de risque d'erreur, les manquants seraient réimportés.

Si vous utilisez vos propres programmes sur un dédié, arrangez vous pour importer au préalable les fichiers manquants en https.

EDIT 2 : pour des raisons de sécurité, le mot auto import ne fonctionnera que tant qu'existera un certain fichier de contrôle. Ce serait une mauvaise idée ( et une faille de sécurité ) de le laisser tout le temps actif puique ces manoeuvres ne sont utiles que la première fois et après chaque mise à jour.  Donc ces fichiers de contrôle auront une vie de 24 h. Il faudra volontairement les recréer pour que l'auto importation reprenne.


 

commentée 13 Janvier 17 par debo (228 points)  
pourquoi http/ ne serait pas sur un serveur ssl commun à tous les sites ?
commentée 13 Janvier 17 par ladmin (2,272 points)  
@debo : pour la qualité. Imaginez que quelqu'un installe volontairement des appels vers des virus. Ils iraient sur ce serveur commun qui serait rapidement déclaré comme suspect. Là chacun engage sa propre crédibilité sans risque de nuisance publique.
commentée 13 Janvier 17 par atlas (293 points)  
impressionnant, j'espère que ça va vite être disponible. J'ai appliqué les modifications de Paco mais c'est encore rouge sur certaines pages
commentée 13 Janvier 17 par infoAvignon (233 points)  
je fait comme ça après avoir créé les fichiers et changé l'url dans le cms. Ca marche ! merci
commentée 13 Janvier 17 par infoAvignon (233 points)  
le top du top, les logs de création dans le répertoire /logs/ dans missinghttps.log
commentée 13 Janvier 17 par ladmin (2,272 points)  
ok, bonne idée ... et tous les 1/4 d'heure envoyer un mail pour signaler les créations. Normalement, il ne devrait y en avoir qu'un après certaines mises à jour ... C'est une affaire de bonne tenue de la ssl, il faudra les lire.
commentée 13 Janvier 17 par paco (436 points)  
@ladmin: ok c'est plus complet. Je le testerai cette nuit.
Feel free to ask and answer in english

Bienvenue sur les FAQ de 123.fr, posez vos questions ou répondez à celles des autres usagers.

...