有时当我尝试从visual studio运行IIS Express时,我收到此消息:
如果我检查哪个进程正在使用该端口,我现在就得到了PID 4,这是我计算机上的System
进程:
D:\>netstat -a -n -o | find "15134"
TCP 0.0.0.0:15134 0.0.0.0:0 LISTENING 4
TCP [::]:15134 [::]:0 LISTENING 4
TCP [::1]:15134 [::1]:50081 ESTABLISHED 4
TCP [::1]:50081 [::1]:15134 ESTABLISHED 7676
D:\>tasklist
Image Name PID Session Name Session# Mem Usage
========================= ======== ================ =========== ============
System Idle Process 0 Services 0 24 K
System 4 Services 0 304 K
我连接到Telnet上的端口,这是响应(我只输入随机字母,而不是有效的HTTP请求):
HTTP/1.1 400 Bad Request
Content-Type: text/html; charset=us-ascii
Server: Microsoft-HTTPAPI/2.0
Date: Wed, 15 Nov 2017 11:41:09 GMT
Connection: close
Content-Length: 326
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/str
ict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Bad Request - Invalid Verb</h2>
<hr><p>HTTP Error 400. The request verb is invalid.</p>
</BODY></HTML>
如何防止这种情况发生?如何处理这个问题,缺少更改开发端口或重新启动PC?
答案 0 :(得分:0)
PID 4和Server: Microsoft-HTTPAPI/2.0
一起表示该端口正被钩住http.sys驱动程序的东西使用。
因此,重启机器很少是一种解决方案。更改为另一个端口是一个更实际的选择。
请注意,“端口正在使用”问题可能有其他原因,因此这个答案并不试图涵盖所有这些问题。