Страница ASPX дает ошибку состояния просмотра - PullRequest
1 голос
/ 15 февраля 2011

У меня есть простая страница aspx с одним видом сетки.При развертывании на сервере и доступе через этот компьютер он работает нормально.Однако при подключении через балансировщик нагрузки мы получаем эту ошибку (при нажатии на любую кнопку).Однако страница обновляется при нажатии F5.

Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.

Есть идеи, что здесь происходит ???

Ответы [ 2 ]

2 голосов
/ 15 февраля 2011

Вы должны установить machineKey в вашем файле web.config одинаковым для всех серверов с балансировкой нагрузки.Ключ компьютера используется для шифрования, проверки, хеширования и т. Д. Всего внутреннего содержимого ASP.NET.Когда ViewState создается на одном компьютере, он создается с помощью ключа компьютера для этого компьютера, и другой компьютер не может проверить его, потому что его ключ отличается.Несмотря на то, что он называется ключом машины, его можно установить для каждого приложения.

Существует несколько генераторов для ключей машины (написать их несложно)Вот первый хит Google: http://aspnetresources.com/tools/machineKey

0 голосов
/ 02 марта 2011

Добавлено enableViewStateMAC = false на странице директивы

...