[英]ASP.NET web app sessions issue
我開發了安裝在“實時” IIS 7.5上的ASP.NET Web應用程序。 該Web應用程序使用http會話在頁面之間為登錄用戶傳遞參數。 這在我的開發機器上效果很好(在VS2010 IDE中通過本地IIS進行了測試),但是當將此Web應用程序上載到客戶端的IIS並開始使用它(Google Chrome和IE瀏覽器)時,在某些隨機時刻,會話變量似乎消失。 我的第一個猜測是通過添加以下行來通過web.config文件增加會話超時設置:
<configuration>
<system.web>
<sessionState timeout="20"></sessionState>
</system.web>
</configuration>
但這似乎無法解決問題。 因此,我想知道,關於會話還有其他設置嗎? 諸如內部文件夾之類的東西可以保留在實際IIS上溢出的所有會話的緩存? 有任何想法嗎?
編輯 :按照@wy__的建議,我修改了web.config文件,並開始在我的開發機上看到相同的問題。 這是我現在擁有的整個system.web部分:
<system.web>
<compilation targetFramework="4.0" debug="false"/>
<pages validateRequest="false"/>
<httpRuntime requestValidationMode="2.0" executionTimeout="110" maxRequestLength="262144"/>
<sessionState timeout="20" cookieless="true" regenerateExpiredSessionId="true"></sessionState>
</system.web>
我還檢查了,只有一個w3wp.exe
進程正在運行。
默認情況下,會話使用cookie跟蹤用戶會話。 如果不確定用戶是否將其關閉,則可以配置無cookie會話。
即
<configuration>
<system.web>
<sessionState cookieless="true" regenerateExpiredSessionId="true" />
</system.web>
</configuration>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.