無法向工作階段狀態伺服器發出工作階段狀態請求。請確保 ASP.NET State Service (ASP.NET 狀態服務)已啟動,並且用戶端連接埠與伺服器連接埠相同。如果伺服器位於遠端電腦上,請檢查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection 的值,確保伺服器接受遠程請求。如果伺服器位於本機電腦上,並且上面提到的註冊表值不存在或者設定為 0,則狀態伺服器連接字串必須使用“localhost”或“127.0.0.1”作為伺服器名稱。
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆疊追蹤資訊,以瞭解有關該錯誤以及代碼中導致錯誤的出處的詳細資料。
異常詳細資料: System.Web.HttpException: 無法向工作階段狀態伺服器發出工作階段狀態請求。請確保 ASP.NET State Service (ASP.NET 狀態服務)已啟動,並且用戶端連接埠與伺服器連接埠相同。如果伺服器位於遠端電腦上,請檢查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection 的值,確保伺服器接受遠程請求。如果伺服器位於本機電腦上,並且上面提到的註冊表值不存在或者設定為 0,則狀態伺服器連接字串必須使用“localhost”或“127.0.0.1”作為伺服器名稱。
源錯誤:
執行當前 Web 請求期間產生了未處理的異常。可以使用下面的異常堆疊追蹤資訊確定有關異常原因和發生位置的資訊。
堆疊追蹤:
[HttpException (0x80072749): 無法向工作階段狀態伺服器發出工作階段狀態請求。請確保 ASP.NET State Service (ASP.NET 狀態服務)已啟動,並且用戶端連接埠與伺服器連接埠相同。如果伺服器位於遠端電腦上,請檢查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection 的值,確保伺服器接受遠程請求。如果伺服器位於本機電腦上,並且上面提到的註冊表值不存在或者設定為 0,則狀態伺服器連接字串必須使用“localhost”或“127.0.0.1”作為伺服器名稱。]
解決方案:
1、我的電腦-》服務-》啟動 asp.net State (asp.net 狀態服務)
或者
2、Web.config設定:
以下是範例的設定給您參考,關於State Server的Port,預設值是 42424,如果您想要修改的話,請您找到以下的機碼值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\Port 直接修改成您要的數字,並且在對應的Web.config中修改掉。
<configuration>
<system.web>
<sessionState mode="StateServer"
stateConnectionString="tcpip=SampleStateServer:42424"
cookieless="false"
timeout="20"/>
</system.web>
</configuration>
3、刪掉web.config 中上面的配置串。這樣 session 就綁定在iis 進程中。而不是狀態服務