2014-08-29 67 views
0

我現在有一個間歇性問題,用戶在這個帖子的標題收到錯誤消息:System.Web.UI.ViewStateException無效的視圖狀態。客戶端IP:127.0.0.1端口:XXX的Referer:HTTP:///

System.Web.UI.ViewStateException 無效視圖狀態。客戶端IP:127.0.0.1端口:xxx引用者:xxx

我終於成功地在我們的開發環境中複製了它,並且似乎與在閒置20分鐘後重新發布表單有關。

我最初認爲這是會議超時引起的問題,但顯然不是。

我發現下面的帖子:

Viewstate timeout error

這表明ViewState的加密密鑰具有有限的壽命,默認情況下在服務器級別設置爲:

<machineKey validationKey="AutoGenerate,IsolateApps" 
      decryptionKey="AutoGenerate,IsolateApps" 
      validation="SHA1" decryption="Auto" /> 

奇怪的是這不會對所有用戶同時發生,所以它不是應用程序池回收。

有誰知道每個用戶會話是否生成密鑰?

我成功的建議

<machineKey validationKey="9664D19D67A5EE43FE77CD2B660A57DF254B15714935DDDDAAC94BC66C5C398F894380AD56572C8762A1AB116B9070C7ACC7F32B489D23476CEA909448831AF3" 
    decryptionKey="CAD9BBC02543433C50CD4A11EA706F0F25FCD51F28E9DEAF20361F0AA2AB3793" 
    validation="SHA1" 
    decryption="AES" 
/> 

這是一個安全的事情在生產環境中做修復這個錯誤我添加靜態機鍵的配置?想要仔細檢查,因爲應用程序已運行了大約10年,是一個全球變化,我不願意在不知道利弊的情況下做出什麼決定。

在此先感謝。

回答

0

這是建議爲網絡農場,所以我沒有理由爲什麼這將是一個單一的Web應用程序的實例的問題。