.NET 3.5 с пакетом обновления 1 вызывает 404 страницы в ASP.NET Web App

У меня проблема с прекращением работы IIS 6.0 для приложения ASP.NET после установки пакета обновления 1 для .NET 3.5,

У меня есть 2 идентичных виртуальных выделенных сервера. Установка SP1 на первый не оказала негативного влияния. При установке его на второй странице ASP.NET начали возвращаться страницы 404 не найдены.

Статические.html страницы работают нормально на обоих серверах.

Кто-нибудь еще испытывал это?

6 ответов

Решение

Это широкая проблема, поэтому давайте начнем с вопросов по устранению неполадок:

  • На основании вашего описания среда выполнения ASP.NET не перехватывает ваш запрос и не обрабатывает файлы aspx. Возможно, вам придется снова зарегистрировать конвейер asp.net в IIS, используя ASPNET_REGIIS -i.
  • Вы убедились, что файл app_offline.htm был удален из каталога приложения? У меня было это раньше после обновления.
  • Вы настроили, например, fiddler, чтобы следовать запросу, чтобы увидеть, что именно запрашивается?
  • Убедитесь, что ASP.NET включен в консоли администрирования IIS в разделе "Расширения веб-службы". Убедитесь, что все разрешено для разных версий фреймворка.

Что ж, давайте начнем с них, и, надеюсь, мы сможем помочь вам решить проблему.

Я видел разных людей с этой проблемой в последнее время. Эта ссылка может помочь.

И этот.

И несколько других.

Пользовательские ошибки в вашем файле web.config установлены на On или RemoteOnly? Если так, что вы получаете, когда вы меняете его на Off?

Просто для ясности. Последний (4-й) пункт, данный Дейлом, был проблемой. Во время установки SP1 Статус для ASP.NET и WebDAV стал установлен в Запрещено в Расширениях веб-служб.

Почему установка SP1 изменила этот параметр на одном сервере, а не на другом - загадка, на которую я не возражаю (но не ожидаю) ответа на...

Вторая ссылка, предоставленная CodingTheWheel, также содержала ответ, поэтому я также отмечу это как ответ.

У меня не было этой точной ошибки с.NET 3.5 SP1, но подобное уже встречалось в прошлом. Обычно это можно решить, открыв командную строку, перейдя в соответствующую папку.NET и запустив ASPNET_REGIIS -i. В случае.NET 3.5 не было обновления для основных компонентов инфраструктуры, поэтому вы фактически должны перейти в папку.NET 2.0, которую на моем компьютере можно найти по адресу:

\ Windows \ Microsoft.Net \ Framework\v2.0.50727

Запуск ASPNET_REGIIS -i перерегистрирует все библиотеки ASP.NET в IIS и должен быть эквивалентен переустановке фреймворка на данном компьютере (насколько это касается IIS)

Никто не делал раньше, поэтому я укажу на тривиальное решение:
Вы уже деинсталлировали пакет обновления и заново установили его (или весь фреймворк)?

Редактировать: @Kev:
Простое объяснение: он сказал, что обновление работает на одной машине, но не на другой. У меня были подобные проблемы в прошлом, и переустановка помогла решить некоторые из них. И это тривиально.
Это мой подход:
1. тривиальный
2. легко
3. головная боль

Вы правы, в продуктивных системах вы должны быть осторожны, но это его решение. А поскольку это виртуальный сервер, может быть, ему будет легко скопировать его и попробовать сначала в качестве тестовой среды.

Другие вопросы по тегам