2010-04-25 3 views
1

У меня есть веб-сайт ASP.Net MVC 2, который можно посетить http://localhost/Admin/ContentMgr/ в ASP.Net Development Server из Visual Studio 2010 (RTM Retail).Развертывание ASP.NET MVC 2 для Windows 2008 R2

При попытке развернуть сайт в Windows 2008 R2, IIS 7.5, URL-адрес всегда возвращает 404.

Во-первых, мой пул приложений работает на .Net 4.0, и в режиме интеграции. Во-вторых, у моих IIS есть функции «HTTP ERROR» и «HTTP Redirection» на

И это мой web.config.

<?xml version="1.0" encoding="UTF-8"?> 

<configuration> 
    <system.web> 
    <compilation debug="true" defaultLanguage="c#" targetFramework="4.0"> 
     <assemblies> 
     <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     </assemblies> 
    </compilation> 
<!-- 
    <authentication mode="Forms"> 
     <forms loginUrl="~/Account/LogOn" timeout="2880" /> 
    </authentication> 
--> 
    <pages> 
     <namespaces> 
     <add namespace="System.Web.Mvc" /> 
     <add namespace="System.Web.Mvc.Ajax" /> 
     <add namespace="System.Web.Mvc.Html" /> 
     <add namespace="System.Web.Routing" /> 
     </namespaces> 
    </pages> 
    </system.web> 

    <system.webServer> 
    <validation validateIntegratedModeConfiguration="false" /> 
    <modules runAllManagedModulesForAllRequests="true" > 
     <remove name="UrlRoutingModule"/> 
     <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    </modules> 
    <handlers> 
     <remove name="MvcHttpHandler" /> 
     <add name="MvcHttpHandler" preCondition="integratedMode" verb="*" path="*.mvc" type="System.Web.Mvc.MvcHttpHandler" /> 
     <add name="UrlRoutingHandler" preCondition="integratedMode" verb="*" path="UrlRouting.axd" type="System.Web.HttpForbiddenHandler, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    </handlers> 
    <httpErrors errorMode="Detailed" /> 
    </system.webServer> 

    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
</configuration> 
+0

Вы установили asp.net 3.5 или выше, а также asp.net mvc 2? также вы проверили, что аутентификация сработала и что на самом деле можно получить доступ к сайту, и, наконец, вы связали URL-адрес сайта, который вы используете, с IP-адресом, который действителен для публичной стороны или, по крайней мере, для действительного IP-адреса вашего NAT, который доступный из NAT. последняя, ​​но не менее важная страница test.html должна только сказать тест слова и должна отображаться в вашем браузере. – davethecoder

+0

Вам нужно установить ASP.Net MVC на сервер Win 08, чтобы получить приложение MVC 2? Я только что установил .Net 4.0 на моем ящике, и я предполагаю, что MVC поставляется с ним. – Picflight

ответ

0

ASP.net MVC 2 не входит в .net 4. У вас есть два варианта:

  1. Развертывание файла System.Web.Mvc.dll в/бен папку вашего приложения
  2. Установка ASP.net MVC 2 на сервере following this cryptic procedure

 Смежные вопросы

  • Нет связанных вопросов^_^