Не удается получить веб-сервер для размещения приложения ASP.NET 4 - PullRequest
0 голосов
/ 04 августа 2011

Окружающая среда:
- Windows Server Standard 2008 с пакетом обновления 2 (не R2) x64
- IIS7 с Media Services 4 для Microsoft SmoothStreaming
- MediaWiki и MySQL

SmoothStreaming работает отлично, MediaWiki работает отлично ... Другие разные приложения Php работают отлично.

Я недавно разработал приложение с использованием Visual Studio 2010. Когда я отлаживаю приложение в Visual Studio, оно прекрасно компилируется, без ошибок. Когда я перемещаю скомпилированное приложение на веб-сервер, оно выдает мне ошибки, даже если пул приложений настроен для .Net 4.0. Я явно что-то упускаю, и я не нашла ответов весь день.

Я попытался использовать инструмент aspnet_regiis.exe для регистрации ASP.NET 4 в IIS, но такого файла не существует в% windir% \ Microsoft.NET \ Framework64 \ v4.0.30319 или% windir% \ Microsoft.NET \ Framework \ v4.0.30319.

Я не понимаю, я сейчас на компьютере с Windows 7 Pro x64, и у меня есть необходимые файлы aspnet_isapi.dll в обоих местах ... но не на моем Windows Server 2008, хотя я использовал точно такой же установщик .Net Framework 4 ...

Я также пытался удалить .Net Framework 4 и переустановить так, чтобы он автоматически регистрировался в IIS7, но обработчики asapi никогда не отображаются, и в этих каталогах отсутствует инструмент регистрации.

Что мне здесь не хватает?

Конкретная ошибка (хотя мое исследование конкретной ошибки не дало никакого направления) заключается в том, что «Обработчик» PageHandlerFactory-Integrated «содержит неверный модуль« ManagedPipelineHandler »в своем списке модулей». <modules runAllManagedModulesForAllRequests="true"/>

Ответы [ 2 ]

0 голосов
/ 05 октября 2011

Оказывается, я гигантский нуб.

Важно, чтобы вы убедились, что у вас установлена ​​правильная версия .NET Framework 4.0.Вам нужна версия «Клиент».Если вы установите «ServerCore», вы столкнетесь с той же проблемой, что и я, хотя интуитивно вы подумали, что вам нужен «ServerCore» для запуска веб-«Сервера», но это не так.

0 голосов
/ 04 августа 2011

Ваш вопрос немного неясен (из-за недостатка деталей в ошибках, которые вы получаете ... например, вы получаете ошибку при переходе на страницу? Это 404? И т. Д.), Но я буду сделать удар.

Первая мысль, которая приходит на ум, - это веб-приложение, в котором вы запускаете приложение MVC? Если это так, ваш веб-сервер может быть не настроен для обработки маршрутов.

Если это приложение MVC, и вы получаете 404, попробуйте добавить следующее в ваш файл web.config:

<system.webServer>
   <modules runAllManagedModulesForAllRequests="true">
<system.webServer>

Это гарантирует, что ASP.Net используется для обработки всех запросов на веб-сервере для этого сайта, при условии, что вы указали System.Web.Routing в своем приложении. Если это решит проблему, возможно, стоит поискать более масштабируемое решение.

...