GO语言Beego框架之WEB安全小系统(番外篇)端口一直被占据
问题过程
启动项目,一直显示“通常只能允许一个端口使用一次”,怀疑是8080
端口被占用
在浏览器输入127.0.0.1:8080
,发现能直接登上项目,但是实际上项目并未启动
到SQL
注入页面填写数据库查询信息,后台也并未输出任何查询结果
在app.conf
中将项目的端口号改为8081
,然后运行
仍然到SQL
注入页面填写数据库查询信息
后台显示如下,仍没有任何查询输出结果
查找缘由
启动cmd
命令行,输入netstat -aon|findstr "8080"
,查询8080
端口的占用情况,发现被一个PID
(进程标识符)为“21432”
的进程所监听(listening)
在cmd
中输入tasklist|findstr "21432"
,查看pid
为21432
所对应的进程或服务
可以看到,一个名为___2go_build_main_go.exe
的进程占用了8080
端口
现在打开进程浏览器,将其杀死(结束进程)即可
真相大白
实际上,原来是上次退出GoLand
的时候,选择了Disconnect
而没有选择Terminate
。坑爹啊,我以为中止和断开连接是一样的,没想到Disconnect
的意思类似于服务器仍然开着,但是在后台挂机。