VS2017 无法连接到Web服务器“IIS Express”终极解决方案
今天日了gou了,一大早打开VS2017的时候出现无法连接到Web服务器“IIS Express”的错误,然后必应了一下,再谷歌了一下找到的解决方法也都千篇一律,奈何都没能解决,最后通过静下心来的思考,尝试解决了问题,特此记录一下,可能没有第二个人会遇到跟我相同的问题了吧!先上问题截图:
问题回顾
首先附上我的操作系统版本,
vs2017是15.9.9的版本
.net core 是2.2的版本
早上打开vs2017尝试调试asp.net core应用程序的时候出现上述错误,然后我就尝试使用 Powershell然后运行dotnet run
来运行,没有抱任何错误,但是使用浏览器访问的时候却死活打不开网站。按理说没错误,打开网站应该没问题啊~但是就是死活打不开,一直提示无法访问。于是开启了必应,以及谷歌之路的问题搜索之路。
千篇一律的解决方案
只要你网上搜索,基本的解决方法都是一致的,可能网上的解决方法适用于大多数人,奈何不适用我的问题。我先把网上千篇一律的解决方案给大家罗列下:
- 升级下vs2017到最新的版本,排除可能因为vs版本BUG不一致导致的问题。
- 保证你配置的iis express运行的URL一致,如下图所示:
- 关闭项目以及vs,然后把解决方案根目录下面的隐藏文件 .vs 文件夹给干掉
- 重新以管理员身份运行vs2017并运行项目。
- 删除Docement/IIS Express文件夹里面的全部内容。
- 卸载IIS Express重新安装
- 卸载vs2017进行安装(这个我没试,当我傻嘛,这个太耗时间,耗不起)
我能跟你说我找到的大多数答案都是上面的内容嘛,更有甚者让我重启下电脑,我不会跟你说我重启了快10次电脑了,问题也还是没有解决。
最后没法,按照如下设置使用iis进行调试而不是借助iis express。这个的确能调试程序并能打开网站了。如下所示设置:
但是太他吗的不优雅了,而且如果你继续用dotnet run
运行程序的话,控制台输出是没有错误的,但是这时候你去访问网站的话,依然打不开你的网站。怎么办呢?
奇葩的解决方法
怎么办呢?vs2017不能直接结合iis express调试了,瞬间整个人都不好了,这时候我就开始回忆,我昨天对电脑做了什么事情?
不就是对电脑进行了优化,把防火墙以及其他的几个服务给关掉了嘛。那会不会是因为防火墙的原因导致的问题呢?
死马当活马医吧,于是我把防火墙的服务给开启了,然后,然后我就想骂街了,尼玛,真的,真的好了,vs2017又能愉快的跟iis express一起调试玩耍了。
这时候我就在想是不是巧合呢?于是我又把防火墙给关闭了,再次使用vs2017+iis express进行调试,擦,问题重现了,
我再次开机启动防火墙,然后重启下电脑,这个错误又消失了。
你说奇葩不奇葩。
因此断定这次我的电脑出现的上述错误情况的根本原因就是关闭了防火墙服务导致的,你说奇葩不奇葩。
另外需要注意的一点是,我的情况并不一定适用于所有人,可能你的问题只需要按照前面的那几个方法就能解决了。没有我的情况这么奇葩。
最后
编程千万条,本分第一条,优化不规范,奇葩问题现。谨以此篇文章献给喜欢过度优化电脑的你。
- 被解放的姜戈03 所谓伊人
- JS魔法堂: Native Promise Only源码剖析
- JavaWeb(三)JSP概述
- 人工智能拥有意识,仅是一个时间问题而已
- sqlserver 配置c3p0 连接池
- spring mvc 返回图片的请求
- JavaWeb(二)cookie与session的应用
- JS魔法堂:函数重载 之 获取变量的数据类型
- 开发问题(一)在windows和linux端口占用问题
- Linux文件系统的实现
- Design Pattern: Not Just Mixin Pattern
- 关于PHP字符编码的函数区别
- Java集合源码分析(二)Linkedlist
- array_shift() 函数
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python数据类型强制转换实例详解
- PHP使用OB缓存实现静态化功能示例
- 在Keras中实现保存和加载权重及模型结构
- Tensorflow与Keras自适应使用显存方式
- Python类及获取对象属性方法解析
- Keras实现DenseNet结构操作
- python中format函数如何使用
- keras得到每层的系数方式
- 解决TensorFlow调用Keras库函数存在的问题
- php判断电子邮件是否正确方法
- python db类用法说明
- python中wheel的用法整理
- 使用Keras训练好的.h5模型来测试一个实例
- python中查看.db文件中表格的名字及表格中的字段操作
- Ubuntu 16.04中Laravel5.4升级到5.6的步骤