2009-11-02 18 views
9

Przy użyciu domyślnego szablonu ASP.NET MVC nie można uzyskać informacji o zwiększeniu limitu czasu FormsAuthentication. Wydaje się, że zawsze używa się 30 minut.Nie można zwiększyć limitu czasu plików cookie ASP.NET MVC FormAuthentication

Śledziłem zalecenie Scotta Gu z this blog post, ale nie wydaje się to mieć znaczenia. Ktokolwiek ma jakieś sugestie?

Jego sugestia, aby ustawić wartość limitu czasu w pliku web.config:

<system.web> 
    <authentication mode="Forms"> 
      <forms timeout="2880"/> 
    </authentication> 
</system.web> 

Odpowiedz

8

Mój problem pojawił się tylko w moim środowisku produkcyjnym na moim hoście internetowym.

Znalazłem this link i wygenerowałem klucz maszynowy do umieszczenia w web.config. Kiedy to zrobiłem, wartość limitu czasu zaczęła obowiązywać.

0

mieć pewność, że są to ustawienie w pliku ~/Web.config, a nie w ~/views/Web plik .config. Również 50 milionów minut to ok. 100 lat, co może oznaczać przepełnienie dat w przeglądarce. Spróbuj użyć bardziej rozsądnej liczby, na przykład 2-3 lat (1,5 miliona minut).

+0

to są dobre propozycje. Jednak w rzeczywistości nie korzystałem z dużej wartości limitu czasu. Musiałem ustawić coś rozsądniejszego niż 2 dni. Jeśli chodzi o lokalizację pliku web.config, mam ustawienie w odpowiednim pliku. Uważam, że ustawienie domyślnie istnieje w szablonie ASP.NET MVC, więc nie został przeniesiony. – YeahStu

2

Miałem ten sam problem i dodanie niestandardowego klucza MachineKey z ValidationKey do web.config rozwiązało problem. Wygląda na to, że dotyczy to współdzielonych hostów.

Kiedyś tę stronę, aby wygenerować losowy klucz maszyny: http://aspnetresources.com/tools/machineKey

Powiązane problemy