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

Microsoft Visual Studio 为ASP配置Web https://localhost:。NET 4.5失败。你必须 手动配置此站点的ASP。NET 4.5才能使站点 正确地运行。无法在https://localhost:44300/上找到服务器 本地机器。确保已配置本地IIS服务器 支持安全通信。

尽管解打开了。此外,当我试图从调试菜单运行它时,我得到以下错误:

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

我无法调试代码。如何摆脱这些错误和调试/运行网站从VS 2012?


当前回答

Jason的Shavers系列文章http://jasonrshaver.com/?tag=/Client+Certificates详细解释了如何设置应用程序主机。配置站点入口,以允许应用程序运行在SSL或标准http。

他建议的一件事是为网站添加两个绑定条目。这就是我所做的。

            <bindings>
                <binding protocol="http" bindingInformation="*:59945:localhost" />
                <binding protocol="https" bindingInformation="*:44300:localhost"/>
            </bindings>

他还建议更改其他设置。我的三台机器中有两台都能用。每次我被告知在应用程序主机中手动配置站点时,通常都与绑定有关。(例如多个web应用使用相同端口)

其他回答

我也遇到了同样的问题,但对我有效的解决方法是不同的。

在VS2013中打开调试> {YourWebsiteName}属性 选择“Web”选项卡。 在“服务器”下,我发现“覆盖应用程序根URL”被选中。我取消勾选并保存。

这就是我所需要的一切,让它运行起来。

我在VS2012中运行我的解决方案时遇到了类似的问题:

无法启动IIS Express Web服务器。 指定的起始URL无效。https://localhost:44301/

我将不正确的项目选择为启动项目。我使云项目启动(右键单击项目->设置为启动项目),一切开始工作正常。

Before you try anything else, make sure you 1. restart visual studio (mostly for refreshing memory resident options from files) and 2. restart your system (mostly for invalid file locking). If your problem is such temporary or self-fixed those will do without changing anything. It worked for me with PC restart. Also if you work on a multi-user project make sure you have the latest workable version - someone else may had check in something invalid by mistake at e.g. the project file and you mess with your system for no reason. If those won't work, then you probably need to alter some setting(s) that are stuck, missing or need modification - there are plenty propositions on other answers.

在我的情况下,我的applicationhost。配置文件以某种方式缺少以下两行代码

<add name="rules-64-ISAPI-2.0" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
<add name="xoml-64-ISAPI-2.0" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />

如果使用VS2015或以上版本

确保iisexpress进程没有运行。

确保没有其他进程正在使用所需的端口。你可以通过执行来实现

Netstat -a -b

在控制台中(作为管理员,在开始菜单中键入cmd,右键单击并选择“以管理员身份运行”)。如果您看到状态为ESTABLISHED或LISTENING的条目,则意味着有其他进程正在使用该端口。您需要终止该进程或更改端口。

然后删除以下文件

<<path_to_solution_folder>>\.vs\config\applicationhost.config

注意。vs文件夹可能被隐藏

然后找到<<project-name>>.csproj。用户文件,用文本编辑器(记事本)打开 并确保WebProjectProperties下的IISUrl配置为<IISUrl>http://localhost:XXXXX/</IISUrl>,其中XXXXX是您想要的端口。

在这样做并尝试启动应用程序后,你可能会得到

HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.

然后转到{项目属性}-> Web,按下“创建虚拟目录”按钮