2009-07-10 6 views

ответ

0

AFAIK, вы не можете отключить кнопку «Назад» веб-браузера.

Добавьте следующий

"если пользователь вошел в систему"

<% Response.CacheControl = "no-cache" %> 
<% Response.AddHeader "Pragma", "no-cache" %> 
<% Response.Expires = -1 %> 
+0

Предположим, что я нахожусь на странице, и я нажал кнопку выхода из системы, после чего он ведет меня на страницу входа. Но если я нажимаю кнопку «Назад», то она отображает мне предыдущую страницу и ее значение. Как это остановить? – 2009-07-10 06:35:53

+0

, как ответил Canavar, очистить кеш. Добавьте заголовок кэша. Отредактировал мой пост. –

2

Очистить кэш вместо этого, это более надежно.

Добавьте их в свой раздел заголовка страницы:

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> 
<META HTTP-EQUIV="EXPIRES" CONTENT="0"> 

И добавить к вашей странице загрузки:

Response.Cache.SetCacheability(HttpCacheability.NoCache); 
+0

Это не работает :( – 2009-07-10 06:34:15

+3

Как и в этом случае, добавьте заголовок no-cache на вывод ваших страниц, на который вы не хотите, чтобы пользователь возвращался. – womp

+0

Да, я просто имею в виду это :) – Canavar

0

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

+0

Нажмите кнопку «Назад» он не делает PageLoad. Итак, как это сделать? – 2009-07-10 06:37:21

0

Отключить кнопку «Назад» невозможно, отлично. Таким образом, вы можете:

  1. Закройте окно при выходе из системы.
  2. На каждой странице проверьте действительный сеанс, а если нет, перейдите на страницу входа.
+0

1. плохое решение 2. не будет работать для кнопки «Назад», так как браузер не делает сообщение на обратной кнопке. –

+0

@rats. вы в основном правы, но по моему опыту сафари делает новый запрос на спине – Midhat

+0

Я не уверен насчет сафари, но IE, FF и Opera не отправляют сообщение, если вы не попросите их не кэшировать. :-) –