2009-11-02 5 views
9

Sử dụng mẫu ASP.NET MVC mặc định, tôi không thể tìm ra cách tăng thời gian chờ FormsAuthentication. Có vẻ như luôn luôn sử dụng 30 phút.ASP.NET MVC FormsAuthentication Không thể tăng thời gian chờ của cookie

Tôi đã theo đề xuất của Scott Gu từ this blog post, nhưng dường như không tạo nên sự khác biệt. Còn ai có đề nghị nào không?

gợi ý của ông là thiết lập giá trị timeout trong file web.config:

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

Trả lời

8

Sự cố của tôi chỉ xảy ra trong môi trường sản xuất tại máy chủ web của tôi.

Tôi tìm thấy this link và tạo khóa máy để đặt trong web.config. Một khi tôi đã làm điều đó, giá trị thời gian chờ có hiệu lực.

0

Hãy chắc chắn rằng bạn đang thiết lập này trong ~/file Web.config và không có trong ~/Views/Web .tập tin cấu hình. Ngoài ra, 50 triệu phút là khoảng. 100 năm, có thể xảy ra một số lỗi tràn liên quan đến ngày trong trình duyệt. Hãy thử sử dụng một số hợp lý hơn như 2 - 3 năm (1,5 triệu phút).

+0

Đó là những gợi ý tốt. Tuy nhiên, tôi đã không thực sự sử dụng giá trị thời gian chờ lớn. Tôi đã đặt nó thành một cái gì đó hợp lý hơn như 2 ngày. Theo như vị trí của web.config, tôi có cài đặt trong tệp thích hợp. Tôi tin rằng thiết lập tồn tại theo mặc định trong mẫu ASP.NET MVC, vì vậy tôi đã không di chuyển nó. – YeahStu

2

Tôi đã gặp sự cố tương tự và thêm một MachineKey tùy chỉnh với ValidationKey vào web.config đã giải quyết được sự cố. Có vẻ như ảnh hưởng đến các máy chủ được chia sẻ.

tôi đã sử dụng trang web này để tạo ra một chìa khóa máy ngẫu nhiên: http://aspnetresources.com/tools/machineKey