前言
这个报错在大家做Flask开发的过程中想必是最经常出现的一个问题,主要原因是Flask默认启用的是5000端口,而5000端口经常会被其他进程占用,造成端口冲突,Flask就会报错OSError:[WinError 10013]以一种访问权限不允许的方式做了一个访问套接字的尝试,如下图所示:
那么解决这个问题就有两个方式,第一种是强制关闭其他占用5000端口的进程,或者占用你设置好的端口的进程,这种方式虽然比较方便,但是可以说是一次性的,你重启电脑之后,这些冲突的端口还是会产生冲突,依旧报错。第二种方式就是一劳永逸了,换个没有进程在使用的端口。下面把这两种方式都介绍一下,兄弟们按需使用。
一、强制关闭其他占用端口的进程
首先win+r打开运行,输入cmd打开命令提示符,输入以下内容,用于查看目前占用5000端口的进程有哪些:
netstat -ano|findstr 5000
然后会出现以下内容:
这里我们可以看到,目前占用5000端口的是进程号为14440的这个进程,那么我们只要结束这个进程就可以正常运行Flask程序了,命令如下:
taskkill /pid 14440 /F
会出现以下内容:
杀死这个占用端口的进程之后,我们再去运行自己的Flask项目就会发现不会再报错了:
二、更改Flask项目的运行端口
第一种方式比较简单,但是也存在一定的不足,笔者的电脑在重启之后会再一次报错,查看端口占用情况后,发现还是有进程占用5000端口,需要重复进行杀死进程的操作才能恢复,所以更推荐直接更改Flask项目的运行端口,将5000端口改为一些电脑不常用的端口,步骤如下:
首先进入pycharm,在我们的导航栏里依次点击Run→Edit Configurations…
然后在点开的界面里,点击Configuration,在Additional options一栏中输入Flask项目要设置的IP地址以及端口,这里以IP地址127.0.0.1,端口5001为例,输入格式如下图所示,输入完成后点击Apply、OK即可。
更改完成后,咱们运行Flask项目,就会发现端口已经更改完成啦~
写在后面
至此,Flask项目端口冲突的问题就得到了彻底解决。Flask算是Python网页编程中比较简单的框架,自己做几个简单的项目之后会很容易上手,当然在学习过程中也会遇到很多问题,不过在网上都能找到解决方案,希望大家能够坚持下去,笔者后续也会继续更新解决问题的方案以及一些练手的项目,希望大家多多关注!
来源地址:https://blog.csdn.net/m0_65741467/article/details/128523758