ASP.net验证viewstate MAC失败。如果此应用程序由Web场或群集托管

时间:2015-09-08 21:53:38

标签: asp.net validation configuration

我收到了这个错误,似乎对我没什么用 如果我添加

    <machineKey validationKey="1234567890123456789012345678901234567890AAAAAAAAAA" 
        decryptionKey="123456789012345678901234567890123456789012345678" 
        validation="SHA1" decryption="Auto" />

收到错误

  

服务器上发生应用程序错误。此应用程序的当前自定义错误设置可防止远程查看应用程序错误的详细信息(出于安全原因)。但是,可以在本地服务器计算机上运行浏览器来查看它。

如果我写

pages validateRequest="false" enableEventValidation="false" viewStateEncryptionMode ="Never"

无法解决我的情况。这是我的系统网站

  <customErrors mode="Off"/>
  <compilation debug="true" targetFramework="4.5.2" />
  <httpRuntime targetFramework="4.5.2" />

任何帮助?

1 个答案:

答案 0 :(得分:1)

默认情况下,Asp.net机器密钥是自动生成的,但可以通过在配置中明确定义Machine key元素来阻止它。

注意:在webfarm /群集中的所有计算机上,machineKey值必须相同。

this KB开始,了解有关管理服务器场和群集部署的计算机密钥的更多详细信息。

  

更新

您可以使用此online utility按机器密钥生成计算机配置。