关于 表单提交 验证视图状态 MAC 失败。

loser002001 开发  2017-03-16 03:50:31
验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 <machineKey> 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。

http://go.microsoft.com/fwlink/?LinkID=314055




有时可以提交有时提交就出错 出错页面 添加 enableViewStateMac="false" enableEventValidation="false" viewStateEncryptionMode ="Never"
web.config 修改 enableViewStateMac="false" enableEventValidation="false" viewStateEncryptionMode ="Never" 都试了

验证都已经关闭了 还是报错 感觉太诡异了



堆栈跟踪:


[ViewStateException: 无效的视图状态。
Client IP: 115.193.162.66
Port: 56862
Referer: http://www.xxx.com/admin/News_edit.aspx?k1=24&id=147&glid=&plat=
Path: /mtdl/tem_cg/News_edit.aspx
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
ViewState: /wEPDwULLTE1NDUwMDYyNDAPZBYCAgIPZBYCAgMPZBYQAgQPDxYCHgdWaXNpYmxlaGRkAgYPEGQPFgFmFgEQBRlOb24tSXNvbGF0ZWQgUG93ZXIgU3dpdGNoBRlOb24tSXNvbGF0ZWQgUG93ZXIgU3dpdGNoZ2RkAgcPDxYCHgRUZXh0BQoyMDE3LTAxLTA0ZGQCCg8PFgIfAQUKMjAxNy0wMS0wNGRkAgsPDxYCHwEFCjIwMTctMDEtMDRkZAIhDw8WAh8BBQhNUiB6aGFuZ2RkAiIPDxYCHwEFB01vdW50b3JkZAIjDw8WAh8BBQoyMDE3LTAzLTE2ZGQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgEFCUJ0blN1Ym1pdBfQhxoCMCqge3LjRK4ri+aVZJ77FNTOBPG5By6OQa1x]

[HttpException (0x80004005): 验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 <machineKey> 配置指定了相同的 validationKey 和验证算法。不能在群集中使用 AutoGenerate。

http://go.microsoft.com/fwlink/?LinkID=314055]
System.Web.UI.ViewStateException.ThrowError(Exception inner, String persistedState, String errorPageMessage, Boolean macValidationError) +169
System.Web.UI.ViewStateException.ThrowMacValidationError(Exception inner, String persistedState) +14
System.Web.UI.ObjectStateFormatter.Deserialize(String inputString) +274
System.Web.UI.ObjectStateFormatter.System.Web.UI.IStateFormatter.Deserialize(String serializedState) +4
System.Web.UI.Util.DeserializeWithAssert(IStateFormatter formatter, String serializedState) +37
System.Web.UI.HiddenFieldPageStatePersister.Load() +241
System.Web.UI.Page.LoadPageStateFromPersistenceMedium() +219
System.Web.UI.Page.LoadAllState() +43
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +8431
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +253
System.Web.UI.Page.ProcessRequest() +78
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21
System.Web.UI.Page.ProcessRequest(HttpContext context) +49
ASP.mtdl_tem_cg_news_edit_aspx.ProcessRequest(HttpContext context) in c:\windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b067ea4f\5099dc3c\App_Web_jk0iepkd.2.cs:0
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +100
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
...全文
145 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
loser002001 2017-03-17
没用 出错页面添加了 web.config 也添加了 不起作用的。 纠结啊
回复
丰云 2017-03-17
试下这个 <system.web> <pages enableEventValidation="false" viewStateEncryptionMode="Never" /> </system.web>
回复
loser002001 2017-03-17
现在是 测试服务器提交都是正常的, 发布到正式的服务器提交时就会报错 ,而且是 不稳定的,相同的内容 有时可以提交成功 有时就不行。 是不是和网络也有关系。
回复
修炼成精 2017-03-16
html特殊字符应该过滤掉
回复
相关推荐
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2017-03-16 03:50
社区公告
暂无公告