2011-10-25 10 views
6

Actualmente estoy desarrollando un sitio web para un refugio para mujeres. Como esta información es muy confidencial para quienes usan el sitio, me gustaría evitar que el navegador guarde el historial de su visita. ¿Es posible usar algo así como la API de historial de HTML5? Idealmente, también funcionaría en IE6 + ya que hay muchas personas que usan versiones antiguas de IE.Detenga los navegadores que guardan el historial de una visita

Sé que los navegadores tienen modos de navegación privada, pero la mayoría de la gente no los conoce, por lo que sería mejor usar una forma automática.

Una posible solución (aunque menos preferida) sería solicitar a las personas que utilicen el modo de navegación privada si no lo hacen actualmente. ¿Es posible detectar esto a través de JavaScript?

EDIT: He aceptado la respuesta de Virgil ya que la educación es la mejor opción ya que pueden necesitar aplicar lo que aprendieron a otros sitios también. También he usado el location.replace de Joseph en el para ocultar mi botón de visita, por lo que desactiva el botón Atrás.

Una cosa interesante a tener en cuenta es que traté de usar history.replace en todos los enlaces del sitio, pensando que esto reemplazaría todo el historial del navegador, lo que significa que solo la última página vista fue recordada. Sin embargo, al abrir el panel de historial en Firefox, que no se probó en otros navegadores, todavía se mostraba un registro de cada página vista, simplemente no se podía acceder a través del botón Atrás.

Por lo tanto, para cualquier persona con una consulta similar, me gustaría reiterar que educar al usuario es el primer paso para protegerlos. Gracias a todos por su consejo.

Saludos

Ric

+1

Útil: http://stackoverflow.com/questions/2860879/detecting-if-a-browser-is-using-private-browsing-mode – Konerak

+0

¡Buena idea y buena suerte en tu gran causa! –

+0

Una solución es que ciertos socios inocuos útiles carguen su página estilo AJAX, o por proxy, etc., lo que hace que sea imposible para un segundo usuario volver a visitar. Tal vez haga un enlace de una vez que dirija a su sitio a través del proxy, luego haga que ese enlace de una sola vez sea destruido o señalado en otro lugar. –

Respuesta

3

Desafortunadamente esto no es posible. La acción del usuario debería tomarse para eliminar su historial. Le sugiero que ponga una advertencia para que las mujeres puedan eliminar su historial y puede incluir instrucciones para cada navegador importante. Con respecto a HTML5 y JavaScript, esto no sería posible en IE6 ya que no es compatible con HTML5.

+0

= 1 a esta respuesta mía. Podrías poner varios hacks, etc., que oscurecerán la historia, pero estarías mucho mejor educando a tus usuarios. De esta manera tendrán la opción si quieren borrar la historia o no. Algunas personas pueden querer usar su historia después de todo. –

+0

Puede hacerles las cosas más fáciles: un nombre de dominio no sospechoso, solo una visita de página y el resto cargando con AJAX (solo una línea de historial para eliminar en lugar de 50), sin cookies, sin registro de correo electrónico, botón de pánico , videos tutoriales ... – Konerak

+0

@LeeTheobald, Virgil, tenemos un par de botones grandes en el sitio para decirle a la gente que use modos de navegación privados y un botón de pánico. Tienen una animación ligeramente hortera para captar la atención de los usuarios, pero creo que su beneficio supera las preocupaciones estilísticas. Gracias por el consejo. –

0

Bueno, aunque no creo que se pueda usuarios "fuerza" para utilizar la navegación privada, se les puede dar todas las oportunidades para evitar la historia.

Por ejemplo, haga que el sitio intente almacenar una cookie (tanto desde el servidor como usando un lenguaje como javascript). Si el servidor puede volver a detectar la cookie en la próxima visita, rediríjala a un tipo de página de destino "Usar navegación privada [y acá es cómo] o proceda bajo su propio riesgo".

Eso sobre la única manera de evitarlo.

Yo, por supuesto, también implementaría SSL, pero creo que esto es más implícito.

3

Una forma de hacerlo es hacer que toda la navegación se realice exclusivamente a través de javascript utilizando locarion.replace (url). Esto no guarda un estado de historial, sino que también significa que el usuario no puede usar marcadores realmente. Para un enlace, sería similar a este

<a href="javascript:location.replace(location.host + '/wherever.html')" href="wherever.html">wherever</a> 

O

<a href="#" onclick="location.replace(location.host + 'wherever.html'); return false;">wherever</a> 

o similar.

+0

El cónyuge curioso no verá abusrefuge.org, sino somesite.org, pero cuando visite el sitio para ver cómo funciona, aún verá de qué se trata. – Konerak

+0

Gracias, veré cómo implementar esto y cómo funciona. –

-4

¿No sería la solución utilizar HTTPS? Estoy bastante seguro de que los navegadores no almacenan el historial de esos sitios.

+1

Eso no es verdad. Los navegadores pueden almacenar el historial independientemente de si se usa HTTPS o no, y en realidad lo hacen. –

Cuestiones relacionadas