Asp.net mvc IIS7上的MVC2网站显示目录列表,而不是主目录/索引

Asp.net mvc IIS7上的MVC2网站显示目录列表,而不是主目录/索引,asp.net-mvc,web-hosting,iis-7,Asp.net Mvc,Web Hosting,Iis 7,我正在尝试将MVC2网站托管到IIS。 我采取了以下步骤: 在IIS中创建网站(定义目录定义的物理路径和应用程序池) 已将代码从visual studio发布到物理路径 但当我试图浏览我的网站时,它给了我一个错误 HTTP错误403.14-禁止将Web服务器配置为不列出 此目录的内容 所以,我启用了目录浏览功能,现在它只显示目录列表。 我试过什么 为aspnet_isapi.dll添加了通配符脚本映射 启用HTTP重定向 我在一些答案中发现了一些与这个问题相关的东西,但对我来说没有任何效果 我的

我正在尝试将MVC2网站托管到IIS。 我采取了以下步骤:

  • 在IIS中创建网站(定义目录定义的物理路径和应用程序池)
  • 已将代码从visual studio发布到物理路径
  • 但当我试图浏览我的网站时,它给了我一个错误

    HTTP错误403.14-禁止将Web服务器配置为不列出 此目录的内容

    所以,我启用了目录浏览功能,现在它只显示目录列表。 我试过什么

  • 为aspnet_isapi.dll添加了通配符脚本映射
  • 启用HTTP重定向 我在一些答案中发现了一些与这个问题相关的东西,但对我来说没有任何效果 我的路由配置是

       public class MvcApplication : System.Web.HttpApplication
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    
            routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
                );
    
    
        }
    
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
    
            RegisterRoutes(RouteTable.Routes);
        }
    }
    

    以下是您可以检查的内容:

  • 如果应用程序正在使用ASP.NET 4,请确保已在IIS中注册。以下命令应使用工具注册它:
    c:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet\u regis-
    ir
    (如有必要,使用适当版本的框架调整路径)
  • 确保为网站配置的应用程序池使用集成管道模式

  • 你找到解决办法了吗? 我已经面对同样的问题好几个小时了。这是我奇怪的故事

    我正在配置一个全新的win srv 2008 R2,其中通过角色(7.5…)安装了IIS,并在我的开发环境的IIS中添加了相同的组件。 我认为我的系统已经安装了.net fw 4.0,因为我已经能够打包asp.net 4.0应用程序池,可能是因为我已经安装了4.5。我还通过aspnet_regiis.exe-lv和我的asp.net v.4.0检查了IIS上安装的asp.net版本。。。。在32位和64位版本中都神奇地存在

    但是

    我注意到默认网站结构中有一些奇怪的东西:我只有aspnet\u client\system\u Web\2\u 0\u 50707文件夹。所以4.0。。。。文件夹丢失

    我的解决方案。 我已经从服务器上卸载了.net 4.5,然后安装了从microsoft下载包的v.4.0。然后,我使用aspnet注册了我的aspnet 4.0版本-我在它的文件夹(%windir%\Microsoft.NET\Framework64\v4.0.30319)中显示

    在重新安装我的mvc3/razor web应用程序后,即使没有在服务器上安装mvc3组件,一切正常

    因此,请确保在系统中真正安装了所选的fw版本,并在iis(aspnet)中进行了配置

    希望这有帮助


    再见。

    是的,它是集成的,我尝试过这些解决方案,但没有任何适用于meApplication pool的解决方案是集成的,我尝试过上述工具,但没有适用于配置为使用.NET 4.0运行的应用程序池?您还验证了应用程序文件已部署到网站所指向的正确目录吗?是,应用程序池已配置为.NET 4.0。网站所指向的目录类似于“C:\inetpub\wwwroot\myWeb”,其中包含我发布的代码。我不知道我已经陷入这个问题好几天了,几乎尝试了internet上找到的所有解决方案,但如果在根目录下放置一个简单的.aspx页面,它仍然无法工作。是否提供了服务?谢谢@edtruant,但是我的框架文件夹显示从v1.0.3705到v4.0.30319的所有.NET版本的文件夹。但我将尝试重新安装并注册.NET framework。