Подтвердить что ты не робот

Script не обслуживается статическим обработчиком файлов на IIS7.5

Я только что попытался развернуть мое первое веб-приложение в IIS на своем ноутбуке Windows 7 Home Premium. После создания приложения мне пришлось перейти в Classic App Pool, а затем установить этот пул для фреймворка 4.0. Теперь я получаю следующую ошибку:

Ошибка HTTP 404.17 - Не найдено. Запрошенный контент представляется скриптом и не будет обслуживаться статическим обработчиком файлов.

Запрошенный URL-адрес: http://localhost: 80/pvmms/default.aspx

Боюсь, что обширный Гуглинг не дал мне ничего четкого или определенного для меня отношения, и, как обычно, я обратился к экспертам.

EDIT: Я подозреваю, что это связано с отсутствием сопоставлений обработчика framework 4.0 для файлов.aspx. Тем не менее, aspnet_regiis даже дает моему администратору палец и говорит, что мне нужны права администратора для его запуска.

EDIT # 2: Я зарегистрировал все фреймворки (2 и 4, 32 и 64), и теперь все работает. Я нашел это, вручную добавив карту сценария для .aspx в aspnet_isapi и voila. Я не понимаю, почему установка фреймворка не делает этого, если только моя память не удалась, и я включил только IIS после установки VS.

4b9b3361

Ответ 1

Возможно, слишком поздно, но чаще всего вам нужно запускать

aspnet_regiis.exe -i  

после установки asp.net. Возможно, я сделаю это в любом случае.

Ответ 2

В дополнение к выше, если вам нужна поддержка WCF, вам может потребоваться выполнить следующее:

c:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe -i

Замените v3.0 на любую текущую версию фреймворка.

Ответ 3

Если вы используете iis 7.5.

Просто зайдите в диспетчер IIS, откройте свойства своего веб-сайта.

Вы увидите раздел "Сопоставления обработчиков", просто перейдите в этот раздел и найдите "staticFile".

Скорее всего, это последний файл в списке.

Затем щелкните правой кнопкой мыши на нем и выберите "Восстановить родителя".

Я потратил столько времени, пока я столкнулся с этим в первый раз, так как это решит вашу проблему.

Ответ 4

Я столкнулся с этой ошибкой из IIS 8.5 при попытке доступа к службе WCF, которую я написал. Оказывается, сервер не включил функции активации HTTP WCF. Проверял ящики и щелкал через мастер, iisreset, начал работать.

Windows Features Panel

Ответ 5

У меня была эта проблема с Windows Server 2012 с ASP.NET 4.5, вы не можете использовать aspnet_regiis.exe, и просто нужно установить ASP.NET 4.5 с помощью мастера добавления ролей и возможностей:

enter image description here

Вы можете найти пункт меню "Добавить роли и функции" в меню "Управление" в правом углу Диспетчера серверов

Ответ 6

alt text

должен проверить эту опцию, предположим,

Ответ 7

Я знаю, что это старый вопрос, но у меня только что было это с приложением 3.5 на моей восстановленной машине под управлением Windows 8, и я все еще получал это после aspnet_regiis -iru, и оказалось, что ASP.NET 3.5 wasn ' t отмечены в пределах возможностей разработки приложений (недостаточно репутации для публикации изображения).

Ответ 8

Существует вероятность того, что пул приложений, созданный для вашего приложения по умолчанию, - это версия 2. Итак, хотя вы видите обработчик для расширения .svc в списке, он не работает и рассматривает его как статический файл. Все, что вам нужно, это открыть свойства пула приложений и переключить его на версию 4.

Ответ 9

Я решил эту проблему, включив WCF Services

Programs and Features > NET Framework 4.5 Services > WCF Services> HTTP Activation node

Но вы должны признать, что это ENIRE IIS setup configure/guess/trial и см./попробуйте это/попробуйте, что тратит 4 или 5 наших дней, пытаясь найти решение вокруг подхода. COMPLETE AND UTTER JOKE.

ЖЕСТКО, "ИИС" - САМЫЙ БОЛЬШОЙ ДУХОВНЫЙ ТРЕЙК, КОГДА-ЛИБО ИГРАТЬ НА ЧЕЛОВЕЧЕ К ДАТЕ

Ответ 10

Зарегистрируйте asp.net снова.... решит проблему.
enter image description here

Перейдите в Visual Studio Command Prompt,
И зарегистрируйте asp.net как windows\microsoft.net\Framework [.Net version num]\aspnet_regiis.exe -i

Ответ 11

У меня была такая же проблема на машине Windows 8, которую я настраиваю. Я установил vs2012 перед vs2010, который устанавливает .NET framework 4.5. У меня есть пулы приложений, запущенные в 4.0. Я убедился, что у меня есть aspnet, зарегистрированный для 4.0, используя aspnet_regiis -i. Это все еще не помогло. Затем я открыл функции Windows и заметил, что 4.5 добавлен набор под названием ".NET Framework 4.5 Advanced Services". Я включил службу WCF node и ее дочерние элементы, а затем моя конечная точка svc работала правильно. Надеюсь, это поможет людям, которые переходят на Windows 8.

Ответ 12

Я наткнулся на этот вопрос, когда столкнулся с тем же вопросом. Основной причиной моей проблемы был неправильно настроенный пул приложений. Он был установлен для 2.0 непреднамеренно, когда ему нужно было установить значение 4.0. Ответ по следующей ссылке помог мне раскрыть эту проблему: http://forums.iis.net/t/1160143.aspx

Ответ 13

У меня была та же проблема. Когда я добавил Static content feaute для IIS, он отлично работает.

Ответ 14

Еще одно возможное решение, которое я обнаружил с тем же сообщением об ошибке.

При попытке настроить веб-приложение .NET 4.0 на новый пул приложений я получал эту странную ошибку, сообщающую мне, что он пытался обработать мой файл aspx с помощью статического обработчика файлов, что не имеет смысла.

По какой-то причине ISAPI для .NET 4.0 был отключен в области ISAPI и CGI Restrictions на уровне сервера в диспетчере IIS. Установить его для включения было все, что требовалось, однако диспетчер IIS 7.5 настолько запутан, что ему трудно следовать, мне потребовалось много времени, чтобы понять это.

Я предполагаю, что, поскольку это было приложение 4.0, которое не могло обрабатываться 4.0 Engine, по умолчанию использовался обработчик статических файлов.

Ответ 15

Для других людей, читающих это:

Это может произойти, если зарегистрированная версия .Net не выбрана в разделе "Основные настройки" пула приложений, прикрепленного к вашему веб-сайту. Например, ваш пул приложений для сайтов имеет .Net v2.0, но вы зарегистрировали v4.0

Ответ 16

cmd → щелкните правой кнопкой мыши → Запуск от имени администратора

C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i

Ответ 17

Используя диспетчер IIS, я обнаружил, что файлы .aspx были сопоставлены (под "сопоставлениями обработчиков" ) с ISAPI 2.0 - даже несмотря на то, что ранее был установлен ASP.NET 4.5. Редактирование их, чтобы указать (также) на исполняемый файл для ISAPI 4.0 64bit, устранило проблему.

Исполняемый файл был найден в % Windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll

Ответ 18

Я получил это сообщение для приложения на iis 7.5 с классическим пулом приложений, назначенным для .net 2.0. Мне нужно было перейти к сопоставлениям Handler и добавить две карты script, оба были одинаковыми, за исключением имени. одно имя было svc-ISAPI-2.0-64, другое - svc-ISAPI-2.0. Путь запроса был .svc. Исполняемый файл был% SystemRoot%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll. я перезапустил iis, и все были счастливы

Ответ 19

Один из худших сценариев, который я только что решил, - это конфликтная запись в Web.config.

На моей локальной машине у меня не было расширения .woff, зарегистрированного в IIS, поэтому я добавил его с помощью Web.config. Но на производственном сервере .woff зарегистрирован тип mime. Это вызвало конфликт уровня приложения.

Забавная часть - для этого нет ошибок. Просто угадайте работу (в первый раз, конечно).

Итак, для меня решение было просто удалить и/или элементы из web.config.

Ответ 20

У меня была такая же проблема, я просто изменил версию целевой платформы на веб-сайте на версию, в которой она была разработана, в IIS. Это решило мою проблему. Надеюсь, это поможет...

Спасибо

Ответ 21

это может быть несколько причин, в моем случае в разделе Application pool- > advance setting- > Enable 32-bit application (должно быть верно). Ранее было установлено значение false.

Ответ 22

Для Windows 10/Framework 4.7 мне пришлось включить HTTP-активацию с помощью следующего метода:

  1. Панель управления> Программы и функции> Включение или выключение функций Windows
  2. В.NET Framework 4.7 Advanced Services разверните службы WCF, выберите, чтобы проверить активацию HTTP и все, что вам нужно при работе с WCF
  3. Нажмите "ОК" и дайте установке сделать свое дело, затем откройте командную строку администратора и выполните команду IISRESET

Ответ 23

Перейдите к своему вкусу .Net и архитектуры архитектуры CPU с помощью CMD или powershell

Введите эту команду: aspnet_regiis –r