ASP.Net站點發布後,遇到如下錯誤:“驗證視圖狀態 Mac 失敗。如果此應用程序由網絡場或群集承載,請確保
配置指定了相同的 validationKey 和驗證算法。不能在群集中使用 AutoGenerate”。
一 原因
1 ASP.Net的 runat=''server'' 會對VIEwStat進行Mac的加密,使得提交數據時只能對同一頁面進行。
2 CookIE超時
二 處理方法
1 在接收頁加上 @ page EnableVIEwStateMac="false"
或者 enableEventValidation="false" vIEwStateEncryptionMode ="Never"
當然也可以在web.config的節點裡加入:
<system.web>
<pages enableEventValidation="false" vIEwStateEncryptionMode="Never" />
</system.web>
2 配置matchineKey
<system.web>
<MachineKey validation="3DES" validationKey="319B474B1D2B7A87C996B280450BB36506A95AEDF9B51211"
decryptionKey="280450BB36319B474C996B506A95AEDF9B51211B1D2B7A87" decryption="3DES"/>
</system.web>
在線生成工具
http://www.aspnetresources.com/tools/keycreator.aspx