2011-09-12 1 views
0

J'essaye de sécuriser un site avec SSL. SSL est installé, mais quand je visite le site, je reçois ceci de Chrome:Site SSL, mais a des avertissements

Your connection to domain.com is encrypted with 256-bit encryption. However, this page includes other resources which are not secure. 

Je pense avoir mis à jour tout d'utiliser les ressources du site SSL. J'ai même copié le DTD XHTML et l'ai stocké localement. Qu'est-ce que je fais de mal? Ce qui suit est une page d'exemple:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://secured.CompanyName.com/schemas/xhtml1-strict.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" class="frontend"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> 
    <title>CompanyName</title> 
    <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" /> 
    <script type="text/javascript" src="https://secured.CompanyName.com/scripts/jquery.1.4.4.min.js"></script> 
    <link media="all" type="text/css" href="https://secured.CompanyName.com/styles/jquery-ui/jquery-ui-1.8.2.custom.css" rel="stylesheet" /> 
    <script type="text/javascript" src="https://secured.CompanyName.com/scripts/jquery-ui.1.8.2.min.js"></script> 
    <script type="text/javascript" src="https://secured.CompanyName.com/scripts/jquery.layout.min.js"></script> 
    <link href="https://secured.CompanyName.com/styles/login.css" rel="stylesheet" type="text/css" media="screen" charset="utf-8" /> 
    <link media="all" type="text/css" href="https://secured.CompanyName.com/styles/CompanyName_main.css" rel="stylesheet" /> 
</head> 

<body id="doc3" class="yui-t6"> 
    <div id="site_wrapper"> 
    <div class="CompanyName_header"> 
     <div class="logo"> 
     &nbsp; 
     </div> 

     <div class="message" id="message" style="display:none;"> 
     <p>Successfully saved.</p> 
     </div> 
    </div> 

    <div id="body_wrapper"> 
     <div id="login_wrapper"> 
     <form enctype="multipart/form-data" method="post" action="https://secured.CompanyName.com/index.php/main/login/submit/"> 
      <div id="login_content"> 
      <div id="square1"></div> 

      <div id="square2"></div> 

      <div id="square3"></div> 

      <div id="square4"></div> 

      <div id="login_header"> 
       Login 
      </div> 

      <div class="login_email"> 
       <label for="email">Email Address:</label><input type="text" name="email" id="email" /> 
      </div> 

      <div class="login_password"> 
       <label for="password">Password:</label><input type="password" name="password" id="password" /> 
      </div><input type="submit" name="submit" value="Login" class="login" /> 
      </div> 
     </form> 
     </div> 

     <div id="login_wrapper-shadow"> 
     &nbsp; 
     </div> 
    </div> 
    </div> 

    <div id="ft" class="ui-layout-south CompanyName_footer"> 
    <div class="content"> 
     <p>&#169; 2010 <span class="name">CompanyName</span>. All rights reserved.</p> 
    </div> 
    </div> 
</body> 
</html> 
+0

Si une partie de votre contenu n'est pas téléchargée en utilisant une méthode sécurisée, mais que la page principale est destinée à être sécurisée, vous obtiendrez cette erreur. Ce pourrait être une image et/ou un autre fichier. –

+2

Impossible de voir quelque chose d'évident à partir du code HTML. Vous pouvez utiliser fiddler, et toute demande non-HTTPS devrait apparaître. – sdcoder

Répondre

2

Si vous regardez la console développeur, il devrait vous dire quelles ressources ont été mal compris. Malheureusement, même si vous avez fait quelque chose correctement, il est possible que les scripts ou les ressources que vous avez inclus incluent incorrectement les ressources HTTP. Par exemple, votre fichier CSS peut inclure des images via HTTP ou il est possible que votre JavaScript injecte d'autres scripts ou images dans le DOM qui utilise HTTP.

En outre, vous pouvez utiliser "//" au lieu de "https: //" pour référencer les ressources si vous souhaitez autoriser l'inclusion de votre site Web sous HTTP et HTTPS; Cela garantira que les ressources sont chargées sous HTTP lorsqu'elles sont accédées à partir d'une page HTTP et chargées avec HTTPS lorsqu'elles sont accédées à partir d'une page HTTPS. L'utilisation d'un chemin relatif au protocole est préférable pour plusieurs raisons:

  1. Il nécessite moins de modifications pour prendre en charge les deux mécanismes.
  2. Il rend le site Web plus rapide lorsqu'il est chargé sous HTTP.
  3. Il utilise moins d'octets, ce qui améliore légèrement le temps de chargement de la page.
Questions connexes