來源: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 端口。
沒有驗證是否真的是酷狗所致。