最近在尝试写微信公众号后台,但是微信 http 只支持 80 端口。

我用的 Windows 服务器 + Python + Flask 搭建,当使用 port = 80 ,运行时提示错误:

flask调试错误:Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试

搜了下原因是端口被占用。为了解决这个问题,我花了大量时间。

在这里插入图片描述

首先想的是换个端口,但是 微信不支持 公网IP:端口 这种 url,然后就想怎么能把其他端口用域名映射出去,搜了很久也没找到一种简单合适的解决办法。

最后还是直接解除占用服务器的 80 端口吧。

Windows + R,输入 cmd 打开命令提示符。

输入以下命令查找占用 80 端口的应用。

netstat -ano | findstr ":80"

最右边就是运行应用的进程ID,阿里云服务器应该有两个东西占用了 80 端口,一个 PID 是 4,还有一个 PID 是个四位数。

在这里插入图片描述

使用以下命令找到 PID为 4 的应用,发现是 System

tasklist /fi "PID eq 4"

那这个就不能直接杀死进程,得去改端口。

输入 regedit 打开注册表。

找到以下路径 :

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP

找到项 Start,将其值改为 0
在这里插入图片描述

去阿里云重启服务器,这个 PID 为 4 的就没有占用 80 端口了。

然后还有另一个占用 80 端口的,一般是 AliyunDun.exe,是阿里云的一个安全服务,这个的话找到了 PID,直接用以下命令杀死进程即可:

taskkill /pid 2xxx

结束以后就没有占用 80 端口的进程了,直接运行成功!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐