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

У меня проблема с тем, что 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 был удален из каталога приложения? У меня такое случалось раньше, после обновления.
  • Вы настроили скрипач, например, чтобы следить за запросом, чтобы узнать, что именно запрашивается?
  • Убедитесь, что ASP.NET включен в консоли администрирования IIS в разделе «Расширения веб-служб». Убедитесь, что все разрешено для разных версий платформы.

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

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

И этот .

И еще несколько.

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

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

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

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

У меня не было этой точной ошибки с .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).

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

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

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