来源:http://www.markjour.com/article/django-runserver-error.html html
运行 django runserver 的时候,出现 Error 10013,即 8000 端口被占用。 mysql
使用 apache wsgi 也是说端口占用。 sql
不想换端口,有一段快捷方式在浏览器上呢,因此须要找出那个占用端口的进程,而后卸掉。 apache
C:\Users\Administrator\>netstat -ano 活动链接 协议 本地地址 外部地址 状态 PID TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 764 TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:1718 0.0.0.0:0 LISTENING 392 TCP 0.0.0.0:2425 0.0.0.0:0 LISTENING 248 TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 9416 TCP 0.0.0.0:3690 0.0.0.0:0 LISTENING 2620 TCP 0.0.0.0:8000 0.0.0.0:0 LISTENING 3108 TCP 0.0.0.0:11211 0.0.0.0:0 LISTENING 1708 TCP 0.0.0.0:15576 0.0.0.0:0 LISTENING 392 TCP 0.0.0.0:30985 0.0.0.0:0 LISTENING 248 TCP 0.0.0.0:49152 0.0.0.0:0 LISTENING 456 TCP 0.0.0.0:49153 0.0.0.0:0 LISTENING 828 TCP 0.0.0.0:49154 0.0.0.0:0 LISTENING 964 TCP 0.0.0.0:49157 0.0.0.0:0 LISTENING 568 TCP 0.0.0.0:49173 0.0.0.0:0 LISTENING 556 TCP 127.0.0.1:49155 127.0.0.1:49156 ESTABLISHED 1708 TCP 127.0.0.1:49156 127.0.0.1:49155 ESTABLISHED 1708 TCP 192.168.25.99:139 0.0.0.0:0 LISTENING 4 TCP 192.168.25.99:49539 218.30.118.68:80 ESTABLISHED 2024 TCP 192.168.25.99:49567 116.255.135.90:80 CLOSE_WAIT 248 TCP 192.168.25.99:49748 114.112.66.186:80 ESTABLISHED 2520 TCP 192.168.25.99:50320 74.125.31.125:5222 ESTABLISHED 2900 TCP 192.168.25.99:50841 123.58.182.253:80 ESTABLISHED 3880 TCP 192.168.25.99:50945 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50946 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50954 114.112.66.109:80 ESTABLISHED 392 TCP 192.168.25.99:50955 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50956 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50957 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50958 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50959 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50960 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50961 123.58.182.251:443 CLOSE_WAIT 3880 TCP 192.168.25.99:50962 123.58.182.251:443 CLOSE_WAIT 3880 TCP [::]:135 [::]:0 LISTENING 764 TCP [::]:445 [::]:0 LISTENING 4 TCP [::]:3306 [::]:0 LISTENING 9416 TCP [::]:11211 [::]:0 LISTENING 1708 TCP [::]:49152 [::]:0 LISTENING 456 TCP [::]:49153 [::]:0 LISTENING 828 TCP [::]:49154 [::]:0 LISTENING 964 TCP [::]:49157 [::]:0 LISTENING 568 TCP [::]:49173 [::]:0 LISTENING 556 UDP 0.0.0.0:500 *:* 964 UDP 0.0.0.0:1900 *:* 392 UDP 0.0.0.0:2425 *:* 248 UDP 0.0.0.0:3600 *:* 2024 UDP 0.0.0.0:4500 *:* 964 UDP 0.0.0.0:5355 *:* 1236 UDP 0.0.0.0:6235 *:* 392 UDP 0.0.0.0:6445 *:* 392 UDP 0.0.0.0:7908 *:* 392 UDP 0.0.0.0:11211 *:* 1708 UDP 0.0.0.0:11509 *:* 392 UDP 0.0.0.0:58131 *:* 2024 UDP 0.0.0.0:58173 *:* 2900 UDP 127.0.0.1:59144 *:* 2024 UDP 192.168.25.99:137 *:* 4 UDP 192.168.25.99:138 *:* 4 UDP [::]:500 *:* 964 UDP [::]:4500 *:* 964 UDP [::]:5355 *:* 1236 UDP [fe80::30df:1257:5ad3:e070%11]:546 *:* 828
可贵找,直接查看指定端口的占用状况 django
C:\Users\Administrator\>netstat -aon|findstr "8000" TCP 0.0.0.0:8000 0.0.0.0:0 LISTENING 3108
也就是说这个该死的 3108 占用了个人 8000 端口。 windows
C:\Users\Administrator\>tasklist|findstr "3108"
说明:不是我写漏了,结果是空,就是空,也就是说没有找到这个进程。 浏览器
我也去任务浏览器中查看了进程表,没有发现 PID 等于 3108 的(若是任务管理器中没有 PID 这一项,能够在任务管理器中选”查看”-“选择列”)。 spa
C:\Users\Administrator\>taskkill /pid 3108 错误:没有找到进程 "3108"。
悲剧了,个人 8000 端口僵尸了!
见鬼了,我发现直接访问 8000 端口能打开 django 网页,试着重启一下,真的好了,缘由不明。 code
PS:为了验证方法没有错误,我关闭占用 3306 端口的进程(也就是 mysql 啦)试了一下。 server
C:\Users\Administrator\>netstat -aon|findstr "3306" TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 9416 TCP [::]:3306 [::]:0 LISTENING 9416 C:\Users\Administrator\>tasklist|findstr "9416" mysqld.exe 9416 Services 0 10,536 K C:\Users\Administrator\>taskkill /f /t /pid 9416 成功:已终止 PID 为 9416 的进程。
也能够根据进程名称关闭进程:
C:\Users\Administrator\>taskkill /f /t /im mysqld.exe
PS:还有一次运行 runserver 的时候忽然爆出一个 10013 错误,网上的说法是 8000 端口被酷狗占用了(确实在听歌),只好改用 8080 端口。
没有验证是否真的是酷狗所致。