Come accedi alla cronologia del browser?

Alcuni strumenti di e-Marketing sostengono di scegliere quale pagina web visualizzare in base a dove eri prima. Cioè, se hai navigato in siti di autocarri e poi vai su Ford.com, la tua prima pagina sarebbe di Ford Explorer.

So che puoi ottenere la pagina immediatamente precedente con HTTP_REFERRER, ma come fai a sapere dove si trovavano 6 siti fa?

Javascript questo dovrebbe iniziare: http://www.dicabrio.com/javascript/steal-history.php
Ci sono più mezzi nefarius per: http://ha.ckers.org/blog/20070228/steal-browser-history-without-javascript/
Edit: Volevo aggiungere che anche se questo funziona è una squallida teqnique di marketing e un’invasione della privacy.

Non correlato ma rilevante, se si desidera solo visualizzare una pagina indietro e non è ansible accedere alle intestazioni di una pagina, document.referrer fornisce il luogo da cui proviene un visitatore.

Non è ansible accedere ai valori per le voci nella cronologia del browser (né lato client né lato server). Tutto quello che puoi fare è inviare il browser indietro o inoltrare un numero di passaggi. Le voci della cronologia sono altrimenti nascoste dall’accesso programmatico.

Nota inoltre che HTTP_REFERER non sarà lì se l’utente ha digitato l’indirizzo nella barra degli URL invece di seguire un link alla tua pagina.

Non è ansible accedere direttamente alla cronologia del browser, ma è ansible confrontare un elenco di siti con la cronologia dell’utente. Questo può essere fatto perché il browser attribuisce un diverso stile CSS a un link che non è stato visitato e uno che ha.

Usando questa differenza di stile puoi cambiare il contenuto delle tue pagine usando puro CSS, ma in generale viene usato javascript. Qui c’è un buon articolo sull’utilizzo di questo trucco per migliorare l’esperienza utente visualizzando solo l’aggregatore RSS oi link di social bookmarking che l’utente effettivamente utilizza: http://www.niallkennedy.com/blog/2008/02/browser-history -sniff.html