Visual Studio 2015中localhost端口连接失败及URL异常问题求助
遇到这种URL自动丢失端口的情况,大概率是端口监听、URL格式或者服务配置出了问题,试试下面这些方法:
先修正URL格式:你提到的初始URL是
http://localhost:/portnumber,这里多了一个斜杠,正确格式应该是http://localhost:portnumber(比如http://localhost:5000)。浏览器遇到格式错误的URL时,很可能自动修正为不带端口的http://localhost,先确认你输入的是正确格式。检查端口是否被监听:
- Windows系统:打开命令提示符,运行
netstat -ano | findstr :<你的端口号>,如果没有返回结果,说明没有进程在占用这个端口,你的服务根本没启动起来。 - Mac/Linux系统:在终端运行
lsof -i :<你的端口号>或者netstat -tulpn | grep :<你的端口号>,同样确认端口是否有进程在监听。
- Windows系统:打开命令提示符,运行
核对服务的端口配置:
如果你是用ASP.NET这类框架(因为提到了.vs文件夹),去项目的launchSettings.json文件里检查applicationUrl配置,确保它设置的是正确的带端口的地址,比如"applicationUrl": "http://localhost:5000"。另外也可以看看项目属性里的启动设置,有没有把端口设空或者设错。清除浏览器缓存/用隐私模式测试:
浏览器可能缓存了错误的重定向规则,试试用无痕窗口打开正确的URL,或者手动清除浏览器的缓存、历史记录和Cookie后再尝试。清理项目编译文件:
除了删除.vs文件夹,还可以删除项目根目录下的bin和obj文件夹,然后重新生成整个解决方案。有时候损坏的编译文件会导致服务启动时端口配置失效。排查防火墙/安全软件拦截:
本地防火墙或者第三方安全软件可能阻止了端口的连接,试试临时关闭防火墙(仅用于测试,之后记得开启),或者把你的服务添加到防火墙的允许列表中。检查服务启动日志:
看看服务启动时的控制台输出或者日志文件,有没有报错信息(比如“端口已被占用”“启动失败”之类的),这些错误信息能直接帮你定位问题根源。
内容的提问来源于stack exchange,提问作者Khanyisa Fante

