0

このコードを使用してログオフを行います

public ActionResult LogOff()
    {

         FormsAuthentication.SignOut();

        // Drop all the information held in the session
        Session.Clear();
        Session.Abandon();

        // clear authentication cookie
        HttpCookie cookie1 = new HttpCookie(FormsAuthentication.FormsCookieName, "");
        cookie1.Expires = DateTime.Now.AddYears(-1);
        Response.Cookies.Add(cookie1);

        // clear session cookie
        HttpCookie cookie2 = new HttpCookie("ASP.NET_SessionId", "");
        cookie2.Expires = DateTime.Now.AddYears(-1);
        Response.Cookies.Add(cookie2);
        foreach (var cookie in Request.Cookies.AllKeys)
        {
            Request.Cookies.Remove(cookie);
        }

        return RedirectToAction("Index", "Home");

    }

ローカルでは問題なく動作しますが、サーバーにアプリを公開すると、ユーザーが既にログオフしていても、ユーザーがブラウザのBackボタンをクリックするとページが表示されます。

4

1 に答える 1

0

キャッシュされたバージョンのページが表示されているだけだと思います。

CTRL+F5 を押すと、再度ログインするように求められますか?

これを本当に無効にしたい場合は、MiBu が提供するこの回答を参照して、安全なページのキャッシュを防止してください。

于 2013-02-07T02:42:26.493 に答える