2014-11-21 3 views
0

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

Response.Cache.SetAllowResponseInBrowserHistory(false); 
    Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache); 
    Response.AppendHeader("Pragma", "no-cache"); 
    Response.AppendHeader("Cache-Control", "no-store"); 

    Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1)); 
    Response.Cache.SetCacheability(HttpCacheability.NoCache); 
    Response.Cache.SetNoStore(); 
+0

Если я правильно понимаю, вы открываете новый браузер, переходите на страницу и авторизуетесь, после чего вы открываете новую вкладку в том же браузере и хотел бы снова выйти из системы, чтобы отобразить страницу входа или? – Mivaweb

+0

№ После входа в систему я копирую его в другой браузер. Например, я успешно зарегистрировался в google chrome, и я скопировал ссылку на IE, показанная страница - это страница по умолчанию, а не Login. – ezekiel

+0

Это не имеет никакого отношения к кешированию, страницы, кэшированные в хроме, не влияют на IE. –

ответ

1

Как вы проверяете подлинность аутентифицированных пользователей. вы отрицаете анонимных пользователей из файла web.config? или у вас есть какие-то сеансы или другие проверки на каждой странице? То, что вы можете сделать, это просто создать BasePage и проверить вашу безопасность.

+0

Я использую if (Session ["user"]! = Null) {* code *} else {* back to login *} на главной странице – ezekiel

+0

Вы должны добавить эту строку в свой файл web.config также для запрета анонимных использования <авторизация>

Смежные вопросы