Получение ошибки при запуске приложения ASP.NET 1.1 в IIS 7.5 в Vista - PullRequest
0 голосов
/ 21 ноября 2011

Когда я перенес свое приложение asp.net 1.1, работающее в IIS 5.1, на другой веб-сервер Vista с IIS 7.5 и запустив приложение в пуле приложений с таргетингом 2.0, на некоторых страницах появляется ошибка ниже. Веб-приложение работает, и на некоторых страницах оно выдает ошибку ниже на некоторых страницах.

"Информация о состоянии недопустима для этой страницы и может быть повреждена.

Описание: во время выполнения текущего веб-запроса произошло необработанное исключение. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и ее возникновении в коде.

Сведения об исключении: System.Web.HttpException: информация о состоянии недопустима для этой страницы и может быть повреждена.

Ошибка источника:

Исходный код, который сгенерировал это необработанное исключение, может быть показан только при компиляции в режиме отладки. Чтобы включить это, выполните одно из следующих действий, а затем запросите URL:

  1. Добавьте директиву Debug = true вверху файла, который сгенерировал ошибку. Пример:

или

2) Добавьте следующий раздел в файл конфигурации вашего приложения:

Обратите внимание, что этот второй метод приведет к компиляции всех файлов в данном приложении в режиме отладки. Первый метод приведет к компиляции только этого конкретного файла в режиме отладки.

Внимание! Запуск приложений в режиме отладки приводит к дополнительным затратам памяти и производительности. Перед развертыванием в производственном сценарии необходимо убедиться, что в приложении отключена отладка.

Трассировка стека:

[FormatException: недопустимый символ в строке Base-64.]

System.Convert.FromBase64String (String s) + 0

System.Web.UI.ObjectStateFormatter.Deserialize (String inputString) + 77

System.Web.UI.ObjectStateFormatter.System.Web.UI.IStateFormatter.Deserialize (String serializedState) + 4

System.Web.UI.ClientScriptManager.EnsureEventValidationFieldLoaded () + 57

[ViewStateException: неверное состояние просмотра. IP-адрес клиента: 10.28.19.31 Порт: 56926

     User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET4.0C; .NET4.0E; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.1.4322)

[HttpException (0x80004005): Информация о состоянии недопустима для этой страницы и может быть повреждена.]

System.Web.UI.ViewStateException.ThrowError (Исключение внутреннее, String persistedState, String errorPageMessage, Boolean macValidationError) + 106

System.Web.UI.ViewStateException.ThrowViewStateError (Исключение внутреннее, строка persistedState) + 14

System.Web.UI.ClientScriptManager.EnsureEventValidationFieldLoaded () + 85

System.Web.UI.ClientScriptManager.ValidateEvent (String uniqueId, String аргумент) + 67

System.Web.UI.Control.ValidateEvent (String uniqueID, String eventArgument) + 69

System.Web.UI.HtmlControls.HtmlInputHidden.LoadPostData (String postDataKey, NameValueCollection postCollection) + 94

System.Web.UI.HtmlControls.HtmlInputHidden.System.Web.UI.IPostBackDataHandler.LoadPostData (String postDataKey, NameValueCollection postCollection) + 13

System.Web.UI.Page.ProcessPostData (NameValueCollection postData, логическое значение fBeforeLoad) + 343

System.Web.UI.Page.ProcessRequestMain (логическое значение includeStagesBeforeAsyncPoint, логическое значение includeStagesAfterAsyncPoint) + 6785

System.Web.UI.Page.ProcessRequest (логическое значение includeStagesBeforeAsyncPoint, логическое значение includeStagesAfterAsyncPoint) + 242

System.Web.UI.Page.ProcessRequest () + 80

System.Web.UI.Page.ProcessRequestWithNoAssert (контекст HttpContext) + 21

System.Web.UI.Page.ProcessRequest (контекст HttpContext) + 49

System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute () + 181

System.Web.HttpApplication.ExecuteStep (шаг IExecutionStep, логическое и завершено синхронно) + 75

Информация о версии: Microsoft .NET Framework Версия: 2.0.50727.4959; ASP.NET версия: 2.0.50727.4955 "


После этого я попытался установить .NET Framework 1.1 на этом сервере и назначил это веб-приложение в пул приложений, предназначенный для платформы 1.1 в классическом режиме. После этого это приложение автоматически останавливалось при попытке запустить это приложение и отображать ошибку «остановка службы».

Поскольку это приложение находится в ASP.NET 1.1, а целевая среда - 1.1, мы не можем реализовать функции ASP.NET 2.0 для обработки ViewState.

Я попробовал ниже один и многие другие трюки, но не повезло: (

  1. страниц enableEventValidation = "false" viewStateEncryptionMode = "Никогда".

    Также все другие связанные конфигурации. Но все они связаны с .NET Framework 2.0 или выше.

Здесь я даю некоторые подсказки к решению, чтобы всем вам было легко дать ответ.

КЛЮЧ

  1. Возможно, проблема View State связана с запуском приложения ASP.NET 1.1 в пуле приложений с таргетингом на .NET Framework 2.0.
    1. Когда мы пытались изменить пул приложений на .NET framework, он выдавал ошибку «service down». Возможные причины вышеупомянутой проблемы могут быть: 2.1 Проблема в установке .NET Framework 1.1 2.1 Неправильная конфигурация для запуска приложения ASP.NET 1.1 после установки .NET Framework 1.1 на этом сервере 2.2 Может не хватать некоторых необходимых .NET Framework v1.1 SP1 2.3 Поскольку этот сервер является 64-разрядным, а наше приложение - 32-разрядным, возможно, неправильно настроен IIS для запуска 32-разрядного приложения на этом 64-разрядном компьютере

У меня есть некоторая информация журнала, когда я пытался запустить приложение в пуле приложений с таргетингом на .NET Framework 1.1 в классическом режиме. Если кому-то нужно это знать, пожалуйста, дайте мне знать, чтобы я мог поделиться здесь.

...