无法启动IIS Express Web服务器

356

我有一个ASP.NET MVC 4的解决方案。当我尝试使用Visual Studio 2012打开它时,我会收到以下错误:

Microsoft Visual Studio

为ASP.NET 4.5配置Web https://localhost:失败。您必须手动为此站点配置ASP.NET 4.5,以便站点可以正确运行。无法在本地计算机上找到服务器 https://localhost:44300/ 。请确保已经配置本地IIS服务器以支持安全通信。

虽然解决方案已经打开。但是,当我尝试从调试菜单中运行它时,我会收到以下错误:

无法启动IIS Express Web服务器。

指定的启动URL无效。https://localhost:44300/

我无法调试代码。如何消除这些错误并从VS 2012调试/运行网站?


4
错误信息表明问题很明显:1)“你必须手动配置此站点以使ASP.NET 4.5正常运行。”和2)“指定的起始URL无效。”另外,你似乎正在使用HTTPS;据我所知,IIS Express不支持它(如果支持,您可能需要进行配置,因此需要“确保本地IIS服务器已被配置为支持安全通信”部分)。编辑:看起来它确实支持SSL:http://riii.nl/apr5u,这是Hanselman本人提供的逐步指南! - RobIII
看起来你需要进行一些配置,因为你似乎正在使用SSL;这里有Scott Hanselman本人的逐步指南 - RobIII
1
@Robel,我看到在站点的属性中,在应用程序选项卡下,目标框架是4.5,在Web选项卡下,启动操作是当前页面。我应该将项目URL更改为http://localhost:44300/吗?我正在使用IIS Express 8。 - DotnetSparrow
54个回答

1

当我查看了IIS Express注册表键时,最终解决了我的问题:

HKEY_CURRENT_USER\Software\Microsoft\IISExpress

我有一个指向“我的网站”的条目CustomUserHome,它引起了混乱。

1

在尝试其他任何方法之前,请确保您执行以下操作:1. 重新启动Visual Studio(主要是为了从文件中刷新内存驻留选项)和2. 重新启动您的系统(主要是为了无效的文件锁定)。如果您的问题是这样的临时或自我修复,那么这些操作将无需更改即可解决。对我来说,通过PC重新启动解决了问题。此外,如果您正在进行多用户项目,请确保您拥有最新的可用版本-其他人可能会错误地检入某些无效内容,例如项目文件,并使您的系统混乱无序。如果这些方法都不起作用,那么您可能需要更改一些卡住、缺失或需要修改的设置-其他答案中有很多建议。


这并没有为现有的答案增添任何新内容。 - TylerH
TylerH,没有带有以下步骤的旧评论: 1.重新启动Visual Studio;2.重新启动您的系统。 - Stefanos Zilellis

1
我在运行XAMPP的Apache服务器后也遇到了这个问题。为了运行它,我通过在管理员命令提示符上写入net stop http来杀死8086端口上的所有进程。我认为是杀死进程导致了我的问题。
对于我来说,在执行以下步骤后,问题得到了解决;
  1. 关闭Visual Studio和SQL Management Studio。
  2. 转到服务并启动除SQL Server Agent (SQLEXPRESS)之外的所有SQL服务。
  3. 转到C:\Users\<your pc name>\Documents删除IISExpress文件夹
  4. 重新启动电脑。(新的待办事项,我在上面没有找到)
  5. 启动Visual Studio并运行程序。

1

在解决方案资源管理器中右键单击项目 输入图像描述

选择 Web 选项卡,然后点击 创建虚拟目录

enter image description here


0

没有必要删除目录C:\Users[你]\Documents\IISExpress中的整个IISExpress文件夹。

只需注释掉:

<binding protocol="https" bindingInformation="*:8090:localhost" />

在IISExpress文件夹中的applicationhost.config文件中。


0

我遇到了同样的问题。请按照以下步骤操作:

1- 如果不存在,请在Documents\IISExpress\config中打开applicationhost文件并添加以下代码

            <site name="solutionname" id="2">
                <application path="/" applicationPool="solutionname">
                    <virtualDirectory path="/" physicalPath="physicaladdressofproject" />
                </application>
                <bindings>
                    <binding protocol="http" bindingInformation="*:xxxx:localhost" />
                </bindings>
            </site>

2- 然后进入您项目的根文件夹,并删除使用不同版本的Visual Stdio进行的所有更新

3- 接下来进入[root].vs\config并删除applicationhost,它将自动创建

4- 运行该项目

这对我有用。


0

我阅读了这里的所有答案,然后按照Mihail Shishkov的回答所述,跳转到项目属性>Web>服务器>创建虚拟目录。这样做的效果是让我避免了以下异常:

无法启动IIS Express Web服务器。 指定的启动URL无效。http://localhost:44300/


0

一直在尝试使用IISExpress和项目来让它监听不同于localhost的URL,但是当我回退时出现了这个错误,在遵循这里所有答案后,它们都没有起作用。

最终注意到在项目属性->Web中,我已经勾选了“启动URL”下的“启动操作”,但输入框为空。将其更改为“当前页面”解决了我的问题。


0
我最近遇到了这个确切的问题,原因是项目存储在网络驱动器上。由于IIS本地运行为NetworkService,它无法访问存储项目的网络共享。假设从网络共享打开项目违反了最佳实践,我将项目复制到本地C:\驱动器,然后项目按预期运行。

0
对我来说,解决方案是从IIS Express切换到本地IIS。 Solution properties 但请确保您的虚拟目录绑定到相同的端口。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接