在IIS 7.5下运行MVC3时出现问题

时间:2011-09-07 19:00:33

标签: asp.net-mvc-3 iis

我正在尝试使Visual Studio 2010在IIS 7.5的本地实例下运行我的项目,而不是启动Web开发服务器。将它部署到IIS没有问题,但是当我尝试浏览到该站点时,就像路由从未在IIS中注册一样,因为我收到错误“Web服务器被配置为不列出此目录的内容”。当我尝试浏览“http:// localhost / returnjson”时,当我浏览“http:// localhost / returnjson / Home / Index”时,我得到错误404.并且我的项目中的路线没有任何问题,它在Web开发服务器下工作。可能是什么问题?

3 个答案:

答案 0 :(得分:5)

这里很难说出了什么问题但是你可以尝试一些事情。

您可能正在查看错误的应用程序。 IIS预先配置了一个默认应用程序,充当了catch all。任何未映射的域名都将在那里结束。因此,默认情况下,当您访问 localhost 时,您将最终到达那里。

如果您将应用程序部署到新的IIS站点,请确保将其绑定到myapp.local这样的正确域名。然后将该域名添加到您的主机文件(%Windows%\System32\Drivers\etc\hosts)并将其映射到IP 127.0.0.1。

另一件可能出错的事情是您的IIS配置有点搞砸了。它有时会发生。您可以使用aspnet_regiis进行修复,如下所示:

aspnet_regiis -ir

此工具位于:

%Windir%\Microsoft.NET\Framework\v4.0.30319

答案 1 :(得分:0)

右键单击MVC3项目并选择Publish。将其发布到文件系统并选择硬盘驱动器上的文件夹。

导航到您发布的文件夹并复制其中的所有内容。

这是一个痛苦的长子,但你可以通过它。

将已发布的应用程序粘贴到wwwroot后,C:\inetpub\wwwroot中的文件夹应如下所示:

enter image description here

你能确认你的文件夹是这样的吗?

答案 2 :(得分:0)

您也可以试用IIS Express代替IIS 7.5

  

IIS Express是为开发人员优化的轻量级自包含IIS版本。 IIS Express可以轻松使用最新版本的IIS来开发和测试网站。它具有IIS 7的所有核心功能以及旨在简化网站开发的其他功能