web-dev-qa-db-fra.com

La connexion HTTPS n'est "pas sûre" à cause des images

Je travaille actuellement sur un site Web et j'ai correctement installé mon certificat SSL.

Le vérificateur GeoTrust SSL/TLS a confirmé que la chaîne de certificats (y compris l'autorité de certification) est correctement installée. Tout se passe bien sur Chrome mais mon cadenas n'est pas vert et sur Firefox, il est indiqué que le site Web n'est pas sécurisé car il contient des éléments non chiffrés.

J'ai utilisé un service en ligne pour vérifier pourquoi et il s’avère qu’en fait, mes images ne sont pas considérées comme des URL sécurisées. Comment puis-je gérer cette situation, comment puis-je intégrer des images sur mon site en toute sécurité?

14
mti_

Vos tags d'image doivent actuellement ressembler à:

<img src="http://example.com/images/image.jpg">

Ce http signifie que l'image n'est PAS diffusée correctement. Un attaquant pourrait modifier l'image en transit et, partant, l'apparence de votre page, par ailleurs sécurisée, pour vos utilisateurs.

À la place, vous pouvez utiliser l’un des moyens suivants pour diffuser les images en toute sécurité:

  • Lien vers https explicitement: <img src="https://example.com/images/image.jpg">
  • Utilisez des liens relatifs vers des images de votre propre domaine: <img src="/images/image.jpg">
  • Utilisez la liaison relative au protocole pour utiliser des images d'autres domaines: <img src="//example.com/images/image.jpg">

Explicit https servira toujours l'image de manière sécurisée (même si la page n'est pas servie correctement), tandis que la liaison relative servira l'image de manière sécurisée uniquement si la page est servie de manière sécurisée.

Dans Firefox et chrome, vous pouvez cliquer sur le cadenas et obtenir plus d'informations sur le problème. Ceci étant fait, voici une capture d’écran de Firefox montrant une liste de toutes les images d’une page. Il est facile de parcourir la liste et de voir lesquels sont http:

32
Stephen Ostermiller

Le problème est que votre page sert des liens à partir d'un emplacement http, par opposition à https. Cela est dû à l'utilisation de liens http absolus pour référencer des ressources telles que des images. Il existe deux meilleures méthodes qui vous permettront de référencer des liens dans http ou https et d'éviter ce problème.

Vous devez trouver ces liens et les modifier en:

  1. liens relatifs: ie. /wp-content/yourtheme/images/image1.jpg
  2. ou place // à l'avant du domaine comme dans //example.com/wp-content/wp-content/yourtheme/images/image1.jpg Cela servira alors ces ressources via http ou https en fonction de la demande qui a été faite.

Dans Chrome et Firefox, vous pouvez cliquer sur l'icône du cadenas, puis sur pour afficher la liste des liens non sécurisés incriminés. Et si vous ne pouvez voir aucune image ou autre ressource mise en surbrillance dans le navigateur mais que vous rencontrez toujours des erreurs, vous découvrirez peut-être qu'un appel javascript fait absolument référence à des liens via http.

5
garth

Si aucune de ces suggestions ne vous aide en ce qui concerne l'impossibilité d'afficher des images après l'activation de SSL sur votre page Web, vérifiez si les paramètres de cPanel pour les liens dynamiques se trouvent dans la section Sécurité du cPanel. Il est très possible que, dans ce paramètre, vous disposiez des éléments suivants: http://example.com et http://www.example.com sont activés pour permettre l'accès aux images alors que la version https de ceux-ci n'est pas activée.

1
Web Junk

C'est vraiment basique. Lorsque vous construisez des sites Web servis via SSL (https) toute référence dans votre code qui n'est pas précédée de https génère des avertissements de sécurité - autre que des liens. Notez que la plupart des navigateurs (tous) proposent également des liens relatifs par défaut vers http. Donc, si vous référencez /uploads/12/5/img.jpg ou /js/jquery.js, le protocole de transfert utilisera par défaut http - ce qui est vraiment gênant.

Tous les navigateurs traitent les avertissements un peu différemment, mais vous recevrez une sorte de message. Une déclaration générale serait que plus le navigateur est récent, plus le message sera sévère. Certains navigateurs plus anciens ignorent pratiquement ces erreurs alors que les nouveaux navigateurs peuvent agir comme si votre monde était attaqué à cause du "s" manquant.

1
blankip