Проверка MAC представления состояния не удалась - PullRequest
0 голосов
/ 27 июня 2011

неперехваченное исключение: [Exception ... "'Sys.WebForms.PageRequestManagerServerErrorException: Sys.WebForms.PageRequestManagerServerErrorException: сбой проверки MAC-адреса viewstate. Если это приложение размещено в веб-ферме или кластере, убедитесь, что указана конфигурацияодин и тот же ключ validationKey и алгоритм проверки. AutoGenerate нельзя использовать в кластере. 'при вызове метода: [nsIDOMEventListener :: handleEvent] "nsresult:" 0x8057001c (NS_ERROR_XPC_JS_THREW_JS_OBJECT) "location:" JS frame :: chrome: //firebug/content/spy.js :: callPageHandler :: line 744 "data: no1002 *

Дело в том, что у меня даже нет тега machineKey.Я закомментировал это, и я все еще получаю эту ошибку.

Это весь мой файл web.config:

<?xml version="1.0"?>

<configuration>
  <configSections>
    <sectionGroup name="UrlRewriter">
      <section name="PlainRules" type="System.Configuration.NameValueSectionHandler"/>
      <section name="RegExRules" type="System.Configuration.NameValueSectionHandler"/>
    </sectionGroup>
  </configSections>

  <UrlRewriter>
    <PlainRules configSource="UrlRewriter.plain.config" />
    <RegExRules configSource="UrlRewriter.regex.config" />
  </UrlRewriter>

  <connectionStrings configSource="db.config"/>

  <system.net>
    <mailSettings>
      <smtp configSource="mail.config"/>
    </mailSettings>
  </system.net>

  <system.web>
    <!--<machineKey validationKey=""
                decryptionKey="" validation="SHA1" />-->

    <compilation debug="true" targetFramework="4.0" />
    <globalization culture="en-US" uiCulture="en" requestEncoding="UTF-8" responseEncoding="UTF-8" fileEncoding="UTF-8" />
    <trace enabled="false"/>
    <!--<customErrors defaultRedirect="~/error" mode="RemoteOnly"/>-->
    <httpRuntime maxRequestLength="4000" executionTimeout="1000"/>

    <authentication mode="Forms">
      <forms defaultUrl="~/" loginUrl="~/login" timeout="43200" protection="All"  cookieless="UseCookies" />
    </authentication>

    <membership defaultProvider="AspNetSqlMembershipProvider" hashAlgorithmType="SHA1">
      <providers>
        <clear/>
        <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" applicationName="damnation" connectionStringName="membership"
             enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" passwordFormat="Hashed"
             maxInvalidPasswordAttempts="20" minRequiredPasswordLength="4" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="5"
        />
      </providers>
    </membership>

    <roleManager defaultProvider="AspNetSqlRoleProvider" enabled="true">
      <providers>
        <clear/>
        <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="membership" applicationName="damnation"/>
      </providers>
    </roleManager>

    <profile defaultProvider="AspNetSqlProfileProvider" enabled="true" inherits="Damnation.Website.Shared.Membership.SharedMembershipProfile">
      <providers>
        <clear/>
        <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="membership" applicationName="damnation"/>
      </providers>
    </profile>

    <httpModules>
      <add name="UrlRewriter" type="Damnation.Website.Shared.UrlRewriting.UrlRewriterModule"/>
    </httpModules>
  </system.web>

  <system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>

    <modules runAllManagedModulesForAllRequests="true">
      <add name="UrlRewriter" type="Damnation.Website.Shared.UrlRewriting.UrlRewriterModule"/>
    </modules>
  </system.webServer>
</configuration>

В чем здесь проблема?Я должен также упомянуть, что я пробовал с и без рерайтера (небольшой модуль, который я написал сам), так что здесь тоже не проблема ...

Обновление: эта проблема перехватывается firebug при попытке войти счленство, которое вызывает обратную передачу в панели обновлений.

1 Ответ

0 голосов
/ 27 июня 2011

Если у вас нет machineKey в вашей конфигурации, он использует тот из machine.config.

Этот сайт настроен на веб-ферме? Если это так, вы должны сгенерировать machineKey и поместить его во все установки файла web.config для вашего сайта.

...