3

几个月来,我一直在 MVC3 中开发一个 Web 项目。我一直在使用 Visual Studio 的内置 Web 服务器 (Cassini) 进行开发,但发现我需要使用 IIS Express 来支持 HTTPS。

安装 IIS Express 8 后,我在 VS 中右键单击项目并选择“使用 IIS Express...”,并允许它为 IIS 创建站点。现在,当我尝试测试我的网站时,出现以下错误:

Specified argument was out of the range of valid values.
Parameter name: site

Stack Trace:
[ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: site]
   System.Web.HttpRuntime.HostingInit(HostingEnvironmentFlags hostingFlags, PolicyLevel policyLevel, Exception appDomainCreationException) +298

[HttpException (0x80004005): Specified argument was out of the range of valid values.
Parameter name: site]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9850940
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

堆栈跟踪不引用我的任何代码,并且我的代码不包含任何名为site. 我有一个Site在几个地方命名的属性,但没有site.

此外,该异常甚至不会触发调试器。该错误没有在 VS 中中断执行,而是在浏览器中显示为标准的黄色 ASP.NET 错误页面(尽管我认为这可能是使用 IIS 而不是 Cassini 时的预期行为)。

我还没有在我的项目中使用任何 HTTPS 代码,无论我是否在项目属性中启用了 HTTPS,都会发生错误。我还应该提到我们的生产服务器运行 IIS 7 正确,我从来没有遇到过这个问题。

那么,知道出了什么问题吗?我可以提供源代码,但目前我什至不知道错误的来源。

4

3 回答 3

3

我有同样的问题。

原来iis 8不适用于windows 7。所以我不得不使用以下方法启用iis 7:

  • 单击开始,然后单击控制面板。
  • 在控制面板中,单击程序,然后单击打开或关闭 Windows 功能。
  • 在 Windows 功能对话框中,单击 Internet 信息服务,然后单击确定。
于 2012-11-13T20:30:44.053 回答
2

我在一台新笔记本电脑(Windows 8)上遇到了类似的问题。拉出我的 GitRepo,尝试在 IIS Express 中运行我的(工作应用程序)并得到同样的错误。

原来我没有在 Windows 功能中安装“Internet Information Services Hostable Web Core”或“Internet Information Services”。我不确定您是否需要用于 IIS Express 的 IIS,因为添加它并不能解决问题,但是一旦我安装了 IIS Hostable Web Core,一切都很好。

我只能假设(很可能从名称中)Hostable Web Core 是一个先决条件。对于 IIS Express。

于 2013-02-27T22:12:53.467 回答
0

我不知道问题出在哪里,但是在我安装了完整的 IIS 版本(不是 express)并在启动时禁用服务之后,我必须工作。

于 2012-10-08T09:01:05.957 回答