啟動(dòng)服務(wù)時(shí)報(bào)錯(cuò)Uncaught Swoole\Exception: listen() failed。 看到listen就是端口號(hào)被占用了。
被占用的原因有很多種情況,請(qǐng)自行排查:
1.守護(hù)進(jìn)程已經(jīng)啟動(dòng)了服務(wù)(最常見)。
2.搭建了多套服務(wù),配置了同一個(gè)端口號(hào),config/swoole.php修改端口號(hào)(同時(shí)也要修改反向代理端口號(hào))。
3.命令行php think swoole啟動(dòng)了服務(wù),導(dǎo)致守護(hù)進(jìn)程無(wú)法啟動(dòng)服務(wù)。
4.其他項(xiàng)目占用了端口號(hào)。
以下是推薦命令:
linux查看端口號(hào)占用命令(以20199端口為例):lsof -i :20199
強(qiáng)行關(guān)閉全部swoole進(jìn)程:ps aux | grep swoole | awk '{print $2}' | xargs kill -9