我面臨的可怕:「視圖狀態MAC驗證失敗如果此應用程序由Web託管遠......」
視圖狀態MAC的驗證失敗。如果此應用程序由Web Farm或羣集託管,請確保配置指定相同的驗證密鑰和驗證算法。 AutoGenerate不能在羣集中使用。
錯誤。
好吧,我查找它,發現它可能是由兩件事引起的,viewState無法通過頁面驗證,和/或無法驗證的事件。
我把
<pages enableEventValidation="false" enableViewStateMac="false" viewStateEncryptionMode="Never">
在我的web.config停止的問題,但似乎很難像一個補丁給我。
事情是,我從來沒有在我的應用程序中使用viewState。我知道asp.net默認使用viewstate來存儲一些東西,但我懷疑這裏存儲的默認值會導致任何錯誤。
我注意到問題似乎發生在我postBack和頁面尚未完成加載。
感謝
編輯:請,有人可以測試我的網站www.vittoriosaStarsNursery.com,看看你會得到我上面得到了錯誤?我沒有得到它在當地,但人們不斷告訴我他們得到它。
那是什麼?它是否與IIS有關?我在我的研究中發現這個問題 – TheGateKeeper
,這是IIS用來加密和解密視圖狀態的加密代碼和方法。如果你沒有它們,那麼當一個新的會話啓動時,它會生成它們並將它們存儲在RAM中,而農場中的其他服務器無法讀取,因此不知道代碼來解密視圖狀態 – Christian
應該注意,你應該保留這些代碼是私密和機密的,因爲與他們一個黑客可能會編輯你的視圖狀態並弄糟你的後端...因此,爲什麼只是複製和粘貼我粘貼的行不會工作:)你可以通過進入IIS自己生成它們,點擊你的網站並點擊生成密鑰(IIS7) – Christian