Остановите браузеры, хранящие историю посещения - PullRequest
6 голосов
/ 25 октября 2011

В настоящее время я разрабатываю веб-сайт для приюта для женщин.Поскольку это очень конфиденциальная информация для тех, кто использует сайт, я бы хотел запретить браузеру хранить историю посещений.Возможно ли это использовать что-то вроде HTML5 History API?В идеале это будет работать и в IE6 +, так как есть много людей, использующих старые версии IE.

Я знаю, что в браузерах есть режимы Private Browsing, но большинство людей не знают о них, поэтому какой-то автоматический способ будетbest.

Одним из возможных (хотя и менее предпочтительных) решений было бы побудить людей использовать режим приватного просмотра, если они этого не делают.Можно ли обнаружить это с помощью JavaScript?

РЕДАКТИРОВАТЬ: Я принял ответ Вирджила, так как обучение - лучший вариант, поскольку им, возможно, придется применить то, что они узнали, и к другим сайтам.Я также использовал location.replace Джозефа на кнопке скрыть мое посещение , чтобы отключить кнопку возврата.

Одна интересная вещь, на которую стоит обратить внимание, - я пытался использовать history.replace для всех ссылок насайт думает, что это заменит всю историю браузера, что означает, что была запомнена только последняя просмотренная страница.Однако при открытии панели истории в Firefox - не проверенной в других браузерах - по-прежнему показывался журнал каждой просмотренной страницы, они были просто недоступны с помощью кнопки «назад».

Так что для любого с похожим запросом я быЯ хотел бы повторить, что обучение пользователей - это первый шаг к их защите.Спасибо всем за советы.

С уважением

Ric

Ответы [ 4 ]

3 голосов
/ 25 октября 2011

Один из способов сделать это - заставить всю навигацию проходить исключительно через javascript с помощью locarion.replace (url). Это не сохраняет историческое состояние, но также означает, что пользователь не может использовать закладки. Для ссылки это было бы похоже на это

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

или

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

или аналогичный.

3 голосов
/ 25 октября 2011

К сожалению, это невозможно. Чтобы удалить их историю, нужно предпринять действия пользователя. Я предлагаю вам поставить предупреждение, чтобы женщины могли удалить свою историю, и вы можете включить инструкции для каждого основного браузера. Что касается HTML5 и JavaScript, это было бы невозможно в IE6, поскольку он не поддерживает HTML5.

0 голосов
/ 30 декабря 2011

Не будет ли решение использовать HTTPS?Я уверен, что браузеры не сохраняют историю этих сайтов.

0 голосов
/ 25 октября 2011

Что ж, хотя я не думаю, что вы можете «заставить» пользователей использовать приватный просмотр, вы можете предоставить им любую возможность избежать истории.

Например, пусть сайт пытается сохранить cookie(как с сервера, так и с использованием языка, такого как JavaScript).Если сервер может повторно обнаружить cookie при следующем посещении, перенаправьте его на целевую страницу типа «Используйте приватный просмотр [и вот как] или действуйте на свой страх и риск».

Это примернообойти это.

Я бы, конечно, также внедрил бы SSL, но я думаю, что это подразумевается.

...