【问题标题】:IIS refuses connection when debugging with Visual StudioIIS 在使用 Visual Studio 进行调试时拒绝连接
【发布时间】:2020-03-13 14:48:45
【问题描述】:

我需要在遗留(ish)ASP.NET MVC 应用程序上做一些工作。我第一次在 Microsoft/.NET 环境中工作。

当我使用 Visual Studio 的默认调试配置文件通过 IIS Express 启动应用程序时,IIS Express 不会响应我的 http 请求。 Chrome 给了我一条 ERR_CONNECTION_REFUSED 消息。

认为这是 IIS Express 特定的错误,我将开发切换到 IIS 10。但是,IIS 10 出现了同样的问题,以及其他问题。当我从 Firefox 发出请求时,我收到了 401。当我从 Chrome 发出 https 请求时,我收到 ERR_CONNECTION_REFUSED 消息(就像 IIS Express 一样)。当我从 Chrome 发出 http 请求时,我的 MyApplication : HttpApplication 中的 WindowsAuthentication_OnAuthenticate 方法被调用,然后我通过 https 获得 302 重定向到同一页面,然后我收到一条 ERR_CONNECTION_REFUSED 消息。

我已阅读有关类似 IIS 问题的其他 SO 问题,并且我已尽我所知尝试了他们的建议。首先,(关闭 Visual Studio)我删除了解决方案文件夹中的 .vs 文件夹。然后我以提升的权限重新打开了 Visual Studio,并重新打开了我的解决方案以重新生成 .vs 文件夹。然后,我打开项目的属性并手动单击按钮为我的 IIS 10 部署创建一个虚拟目录。我还(尝试)阻止 Chrome 自动将 localhost 重定向到 https,然后重复前面的所有步骤。这些都没有任何帮助。

我在 Windows 10 家庭版上使用 Visual Studio 2019。我在 IIS 10 中拥有的唯一绑定是对所有 (*) IP 地址的端口 80 的默认 http 绑定。我想我正在使用 .NET 4,但也许我正在使用 ASP.NET 4?老实说,不确定。

有什么建议吗?

【问题讨论】:

  • “当我通过 IIS Express 启动应用程序时”,你是如何启动它的?从命令提示符? “我将开发切换到 IIS 10”,如何?您的站点在 IIS 10 上的站点绑定是什么?请不要错过问题中如此重要的细节。 “Windows 10 家庭版”也是一个危险信号。家庭版不适合严肃的编程,因为它们甚至没有包含完整功能的 IIS。
  • @LexLi Post 已更新附加信息。还有,我买电脑的时候不知道Home版是这样限制的。我的错。
  • @LexLi 绑定是问题所在。没有为端口 443 设置绑定。我曾假设 ISS 只是默认情况下具有端口 443 绑定,但事实并非如此。如果你想写一个答案告诉我创建一个端口 443 绑定,我会接受。
  • 你应该接受你自己的答案。我不介意。

标签: c# asp.net-mvc visual-studio iis


【解决方案1】:

Lex Li 的评论(给他们点赞)向我展示了我做错了什么。我的 IIS 10 安装没有为 https 提供任何默认绑定。因此,每次我被重定向到 https 时(我认为我的应用程序会自动执行此操作?),IIS 不知道如何处理该 https 请求,因此拒绝连接。打开 IIS 管理器并为端口 443(所有 IP 地址)添加 https 绑定后,我就可以正常访问我的网站了。

【讨论】:

    猜你喜欢
    • 2012-03-16
    • 2023-03-30
    • 1970-01-01
    • 2019-03-11
    • 1970-01-01
    • 1970-01-01
    • 2023-02-07
    • 2021-10-15
    • 2016-09-18
    相关资源
    最近更新 更多