2011-12-11 9 views
19

Supponiamo di avere una pagina Web situata a http://www.website.com con uno in esso. Come questo:Qual è il referrer HTTP se si fa clic sul collegamento in un <iframe>?

<html> 
<head>...</head> 
<body> 
    ... 
    <iframe src="http://www.washington.edu"> 
    ... 
</body> 
</html> 

Ora Supponiamo che qualcuno va a www.website.com e fa clic su un link nella iframe stesso (questo link si trova sul sito web www.washington.edu).

La mia domanda è qual è il Referer HTTP in questo caso?

È http://www.website.com (la pagina che ospita iframe) o è http://www.washington.edu (la pagina in cui è stato fatto clic sul collegamento)?

+0

Duplicato di http://stackoverflow.com/questions/2324202/javascript-iframe-link-referrer. È interessante notare, tuttavia, IE6 segnalerà sempre la pagina padre dell'iframe come referrer. – dash

+1

Bene che IE6 non è più supportato. – bodacydo

+0

Prova a lavorare per una grande organizzazione del settore pubblico o alcuni dei principali chip blu nel Regno Unito :-( – dash

risposta

11

Dipende dal browser.

Firefox e Safari segnalano il referrer come http://www.website.com mentre alcune versioni di Internet Explorer mostreranno http://www.washington.edu come referrer.

UPDATE 2015-04: Test ultime versioni di cui sopra, tutti loro sarebbero tornati http://www.washington.edu

+0

Signore, penso che tu intenda il contrario, ne sono certo, ho accettato comunque la tua risposta Grazie – bodacydo

+0

Hai ragione, bodacydo Ho corretto la risposta –

+0

@GregDubicki Non sono sicuro che dovrebbe essere una modifica di terze parti, poiché in effetti è completamente invertire la risposta dell'OP. Penso che sia meglio rimanere come commento. respinto il tuo suggerimento di modifica. Se non sei d'accordo, non esitare a chiedere informazioni su Meta SO! – TylerH

6

browser attuali

Come di agosto 2015 tutti i principali browser (Safari, Chrome, Firefox) dovrebbe imposta l'intestazione HTTP Referer su http://www.washington.edu in questo caso.


Ma Vi incoraggio a verificare come i browser specifico versioni si comportano in casi specifici, se l'applicazione dipende dal valore Referer pesantemente.

Scrivo questo perché ad esempio ho scoperto che Safari 8 attualmente effettua richieste con Referer errato per JavaScript caricato negli iframe, probabilmente se questo JavaScript è stato precedentemente richiesto con un diverso Referer. Questo è un bug che è simile a this particular one che è stato chiuso in cromo solo nel 2014. (ho già riferito ad Apple, btw.)

vecchi browser

Storicamente Internet Explorer 6 showed different behaviour than described above - sarebbe impostare l'intestazione Referer HTTP http://www.website.com.

Problemi correlati