windows 本地443端口被占用,ASP.NET Core程序拒绝访问
背景:本地的ASP.NET Core程序在配置了HTTPS并且监听443端口,通过https访问被拒绝,提示没有权限,输入swagger路径访问swagger也提示未找到相关页面。
解决:
一般情况下,访问我们的ASP.NET Core 程序的swagger页面并不需要什么权限,而且本地调试运行swagger文档也没有什么问题,而出现没有权限的提醒并且说swagger不存在,那么可以确定这次我们在浏览器中键入url发出的请求应该不是被我们的ASP.NET Core程序获取并处理了,应该是有其他的程序也在监听443端口,并且它的优先级比我们的程序高,请求都优先被它处理了。
win + R 输入cmd,打开命令提示符,输入netstat –ano | find "0.0.0.0:443"
命令查看443端口占用,应该可以发现,如果我们的ASP.NET Core程序在运行中那么会有一个以上的结果,并且可以看到进程的pid,我们使用 crtl + alt + delete(或 .) 打开任务管理器,查看详细信息标签页,点击PID根据pid排序,找到我们查看到的pid,将不是我们的dotnet.exe的其他进程关闭,此时在443端口上就只有我们的ASP.NET Core 程序监听了,此时从浏览器尝试访问,一切正常了 。