某些软件正在使用我的 80 端口,但我不知道它是什么!
有没有什么办法可以追溯呢?
我一直在托管/测试不同的网络服务器,但目前它们都没有运行,至少据我所知没有!
windows 8.1 -顺便说一句,抱歉
答案1
在 Windows 上:
以管理员身份运行cmd
然后使用:
netstat -tab
或者
netstat -ab -p tcp
在 Linux 上:
netstat -tap
答案2
简单地说就是内核。
端口 80 是 HTTP。
内核驱动程序 http.sys 负责处理此问题 - 所有应用程序基本上都应该在此注册其 URL。这允许多个应用程序并行为 URL 的不同部分提供服务。
如果你想停止 http.sys,那么玩得开心: http://www.mikeplate.com/2011/11/06/stop-http-sys-from-listening-on-port-80-in-windows/
您最好认为,任何试图拥有 80 端口的软件都是由不喜欢 Windows 或不关心操作系统功能的人编写的,因此他们会强制对已知端口拥有独占所有权。
为 http.sys 注册一个 URL 然后使用适当的 API 从内核获取请求非常简单。
https://stackoverflow.com/questions/13895542/http-sys-implementation https://stackoverflow.com/questions/2589588/how-to-register-your-application-into-with-http-sys
任何不这样做的应用程序 - 好吧,有好的程序和坏的程序,我不必运行编写得很差的程序。
其背后的想法非常好,因为多个应用程序可以共享该端口。
解释和管理程序的截图(包括源代码)可以在以下网址查看:http://www.codeproject.com/Articles/437733/Demystify-http-sys-with-HttpSysManager