2011-11-28 13 views
12

Ho un sito Web costituito principalmente da una singola applicazione Silverlight. Il sito Web è configurato per funzionare su HTTPS che funziona alla grande. Tuttavia, quando il sito viene caricato in Chrome, viene visualizzato un avviso cheLa pagina Silverlight carica contenuto non protetto da Microsoft

"La pagina a https://testing.efilecabinet.com/ visualizzava contenuto non protetto da http://download.microsoft.com/download/5/1/6/5165823D-1D79-4871-8AC2-42DDDB94A5C2/PNGs/SLMedallion_ENU.png."

Sembra che il framework SL stia caricando questa immagine da microsoft su HTTP. Qualcuno sa di un modo per farlo accadere su HTTPS?

+0

Dove hai visualizzato questo messaggio di errore? Ne ho uno simile quando clicco sull'icona del lucchetto ma non specifica l'URL della risorsa che causa il problema. –

+0

Il messaggio che ho postato è stato trovato nella console di Chrome: https://developers.google.com/chrome-developer-tools/docs/console –

risposta

20

Trovato risolto! Ho scaricato l'immagine e incluso con il nostro sito cambia questa linea:

<img src="https://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/> 

a questo:

<img src="SLMedallion_ENU.png" alt="Get Microsoft Silverlight" style="border-style:none"/> 

A quanto pare questo link "https://go.microsoft.com/fwlink/?LinkId= 161376 "continuerà a reindirizzare su un percorso HTTP per ottenere l'immagine. Quindi, scaricare l'immagine e includerla lo ha risolto direttamente.

+0

Brillante, felice di sapere che hai risolto questo problema con una miscela di risposte di tutti :) –

+4

"Lato negativo" è che ti perdi la sensibilità culturale con Questo. Cioè una persona proveniente da un'altra cultura (norvegese, come me, per esempio) sarebbe servita da un medaglione diverso da Microsoft, ma sul tuo sito, otterrà quella inglese indipendentemente da cosa. Un piccolo prezzo da pagare per la maggior parte, forse, ma vale comunque la pena di essere a conoscenza di questa soluzione. Puoi verificarlo modificando la preferenza della lingua del tuo browser. Quando provo, ricevo il file SLMedallion_NOR.png invece del file SLMedallion_ENU.png. – Alex

3

Nella pagina che ospita il file XAP è presente il tag di ancoraggio con l'URL per scaricare il runtime di Silverlight. Puoi rimuoverlo o ospitare un download sul tuo sito in HTTPS.

<div id="silverlightControlHost"> 
    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%"> 
     <param name="source" value="ClientBin/xxx.xap"/> 
     <param name="onError" value="onSilverlightError" /> 
     <param name="background" value="white" /> 
     <param name="minRuntimeVersion" value="4.0.50826.0" /> 
     <param name="autoUpgrade" value="true" /> 
     <param name="windowless" value="true" /> 
     <param name="AllowHtmlPopupWindow" value="true" /> 
     <param name="EnableHtmlAccess" value="true" /> 

     <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0" style="text-decoration:none"> 
       <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/> 
     </a> 
     </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe> 
    </div> 

È possibile personalizzare l'intero tag di ancoraggio per estrarre il contenuto dal sito.

+0

Sì, hai avuto l'idea giusta! Il download dell'immagine e la pubblicazione dal mio sito l'hanno risolto. –

-1

è possibile modificare il HTTP a HTTPS collegamenti nel file di ancoraggio e che dovrebbe risolvere il problema a portata di mano.

<div id="silverlightControlHost"> 
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%"> 
    <param name="source" value="ClientBin/xxx.xap"/> 
    <param name="onError" value="onSilverlightError" /> 
    <param name="background" value="white" /> 
    <param name="minRuntimeVersion" value="4.0.50826.0" /> 
    <param name="autoUpgrade" value="true" /> 
    <param name="windowless" value="true" /> 
    <param name="AllowHtmlPopupWindow" value="true" /> 
    <param name="EnableHtmlAccess" value="true" /> 

    <a href="https://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0" style="text-decoration:none"> 
      <img src="https://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/> 
    </a> 
    </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe> 
</div> 
+0

Ho cambiato tutti i link della pagina in "https" e non ho fatto la differenza. –

+0

Questo è uno strano comportamento dato che ho appena visitato la pagina in Google Chrome e non ho riscontrato alcun problema. –

+1

Sì, è perché l'ho appena sistemato: D –

Problemi correlati