2009-02-12 10 views
6

Sto lavorando su una pagina Web che ha un iframe e sto caricando un sito esterno nell'iframe. La pagina funziona bene in IE6, FF ecc, ma in IE7 tutto quello che vedo è una pagina vuota.IE7 iframe blank page

Ho scoperto che ciò è dovuto al filtro anti-phishing in IE7. Il filtro anti-phishing non sarà in grado di controllare la pagina web all'interno dell'iframe, in modo che non venga resa correttamente. Hai già affrontato questo problema? Come posso risolverlo?

Modifica: OK. Dopo aver visto le prime due risposte penso che dovrei dare qualche spiegazione in più a questo. La pagina è per l'elaborazione dei pagamenti e sto caricando una pagina (di una società di terze parti) che richiede informazioni sulla carta di credito. Subito dopo aver inserito i dettagli e premendo continua, l'iframe diventa bianco. Dopo molte indagini abbiamo scoperto che IE7 non accetta i cookie di terze parti (quando la pagina è caricata in iframe). Ha qualcosa a che fare con le impostazioni di sicurezza. Alcuni articoli in internet dicono che posso bypassare il filtro phishing. Come posso farlo?

risposta

4

Se si utilizza ASP quindi aggiungere questo codice

Response.AddHeader "p3p", "CP=" & chr(34) & "CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR" & chr(34) 

in tutte le pagine che vengono caricati nel iframe

+10

Non utilizzare ciecamente la data stringa P3P. Determina la tua politica sulla privacy P3P. Leggi http://www.p3ptoolbox.org/guide/ per i dettagli. – Anirvan

2

Hai impostato l'attributo IFRAME WIDTH? Ho letto di questo prima e in quelle occasioni aveva a che fare con l'attributo 'WIDTH'.

Così, invece di utilizzare l'attributo WIDTH del IFRAME, è possibile utilizzare l'attributo di stile invece:

<IFRAME SRC='yourpage.html' STYLE='width:100%;'></IFRAME> 

[UPDATE]
Nel mio precedente esempio ho usato un age% di dichiarare il larghezza dell'IFRAME. Si potrebbe provare a dichiararlo in pixel al posto di percentuale, ad es .:

<IFRAME SRC='yourpage.html' STYLE='width:600px;'></IFRAME> 

Poi di nuovo, questo non potrebbe essere il problema nel tuo caso, ma vi prego di non fornire ulteriori informazioni.

+1

come ora letto nel startpost, ha qualcosa fare con i biscotti di terze parti. Lascerò la mia risposta per ulteriori riferimenti ... – RuudKok

0

Forse si sta utilizzando un tag di titolo come < TITOLO/>

3

IE7 non accetta i cookie terze parti (quando la pagina caricata in iframe).

Può farlo, dipende dalle opzioni impostate. Soprattutto se è stato attivato il livello di privacy, la terza parte deve fornire un file di politica P3P per garantire a IE che non sarà cattivo. (Come privacy misurare questo è un po 'di una perdita morto IMO, ma siamo bloccati con esso.)

sto caricamento di una pagina (di una società 3rd party) che chiede informazioni sulla carta di credito.

Whoah! Non farlo. L'utente non sarà in grado di vedere dalla barra degli indirizzi che è l'URL del sito corretto ed è correttamente crittografato con SSL. Stai effettivamente chiedendo ai tuoi clienti di fidarti di un sito e una connessione sconosciuti.

Perda l'iframe. La maggior parte dei processori di pagamento disporrà di opzioni per personalizzare le pagine di pagamento in modo che corrispondano al tuo sito e restituire l'utente al tuo sito quando ha finito.

+0

Sì, sono d'accordo !! Ma non abbiamo altra scelta se non usare un iframe ora. La pagina è ridisegnata per adattarsi al nostro design. Ho provato ad aggiungere l'intestazione p3p e mostra ancora l'avviso bloccato "cookie"! – Shoban

+0

Deve essere la terza parte (processore di pagamento) che aggiunge la politica P3P alle proprie pagine, temo. – bobince

1

Finalmente ho trovato la soluzione per questo!

Può essere risolto aggiungendo l'intestazione p3p alla pagina Web. Questo dice al browser che il cookie creato dalle pagine nell'iframe è OK per la privacy dell'utente. L'intestazione deve essere aggiunta a tutte le pagine caricate nell'iframe.

Di seguito sono riportati alcuni link che mostrano come ciò può essere ottenuto in diversi linguaggi di scripting (PHP, ASP.net, JSP ecc.).

http://adamyoung.net/IE-Blocking-iFrame-Cookies

http://adamyoung.net/IE-Blocking-iFrame-Cookies

http://admon.org/node/99

Nota: Io a forza utilizzare questa soluzione per motivi di sicurezza e conformità. Grazie Bobince