nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use) nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use) nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use) nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use) nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use) nginx: [emerg] still could not bind()
ss@sdeMacBook-Pro ~ % ps ax -o pid,ppid,%cpu,vsz,wchan,command|egrep '(nginx|PID)' PID PPID %CPU VSZ WCHAN COMMAND 4587 4506 0.0 408636112 - egrep (nginx|PID) ss@sdeMacBook-Pro ~ % sudo kill -9 4587 kill: 4587: No such process ss@sdeMacBook-Pro ~ % ps ax -o pid,ppid,%cpu,vsz,wchan,command|egrep '(nginx|PID)' PID PPID %CPU VSZ WCHAN COMMAND 4592 4506 0.0 408626896 - egrep (nginx|PID)
1
lerry 2023-12-05 10:40:58 +08:00
killall -9 nginx
|
2
dzdh 2023-12-05 10:47:47 +08:00
杀 master 进程。你是不是杀子进程了。要杀 master 才行。
|
3
dzdh 2023-12-05 10:48:06 +08:00
mac 上用 brew services stop 。自己编译的另说。
|
4
lisxour 2023-12-05 11:15:19 +08:00
是不是有守护服务,你不关掉守护,杀不掉的
|
7
zhj0326 OP 在哪儿关呢?
|
8
ysc3839 2023-12-05 11:26:29 +08:00 via Android
为什么要 ps 后面跟一堆乱七八糟的参数,然后 grep 为什么不直接 grep nginx 呢?输出里都没 nginx 进程,直接 ps aux | grep nginx 不就好了?
|
9
zhj0326 OP @ysc3839 ss@sdeMacBook-Pro ~ % ps aux | grep nginx
ss 8358 0.0 0.0 408636112 1552 s002 S+ 11:29 上午 0:00.00 grep nginx ss@sdeMacBook-Pro ~ % sudo kill -9 8358 kill: 8358: No such process ss@sdeMacBook-Pro ~ % ps aux | grep nginx ss 8362 0.0 0.0 408637136 1632 s002 S+ 11:29 上午 0:00.00 grep nginx ss@sdeMacBook-Pro ~ % sudo kill -9 8362 kill: 8362: No such process kill 不完 |
11
rrfeng 2023-12-05 11:46:52 +08:00 2
是 nginx 想要用 80 ,但是 80 被别人占了,你们教楼主 kill nginx 有屁用啊……
|
13
seeyourface 2023-12-05 11:52:59 +08:00
@zhj0326 你是不是部署了个 8080 端口的应用,改应用端口或者改 nginx 监听端口
|
14
oamzn 2023-12-05 11:56:09 +08:00
nginx: [emerg] bind() to 0.0.0.0:8080 failed
我笑笑不说话 |
15
344457769 2023-12-05 11:59:49 +08:00
命令行不会搞的话,就去活动监视器里看看占用 8080 端口的进程的父进程是谁,能不能强制退出。
|
16
winterbells 2023-12-05 12:03:49 +08:00 via Android
Nginx 退出是 nginx -s quit
到底谁在占用 |
17
lzy250 2023-12-05 12:09:54 +08:00 via iPhone
找 8080 吧?
|
18
darklinden 2023-12-05 12:34:03 +08:00
mac? 自带的 apache 开着的吧?关了就好
用命令行的时候看不懂英文的话好歹把输出粘谷歌翻译看下说的是啥啊... |
19
huadi 2023-12-05 12:36:14 +08:00 1
netstat -ntlp | grep 8080
或者 ss -ntlp | grep 8080 看哪个进程占用了 80 端口,然后 kill |
20
dzdh 2023-12-05 12:36:17 +08:00
lsof -iTCP -sTCP:LISTEN -P | grep :80
找到哪个进程监听的 80 端口 没有 lsof 的话先安装 lsof brew install lsof |
21
huadi 2023-12-05 12:39:45 +08:00
你的进程里面根本没有 nginx ,所以 grep 不出来。
8358 ,是 grep 命令的进程号,grep 输出之后,8358 就退出了,你再去 kill 当然 no such process 然后你再运行 ps|grep ,又有一个新的 grep 进程,就是 8362 ,运行完又退出了,当然 kill 不完…… |
23
zhj0326 OP @darklinden 不是这个原因
|
25
xlzyxxn 2023-12-05 14:10:26 +08:00
我一直以为 v2 里都是技术大佬的。。。
|
26
horro 2023-12-05 16:36:43 +08:00
不就是 lsof -i 就解决了么。。
|
27
gulucn 2023-12-05 16:39:35 +08:00
感觉都被 OP 带偏了。
|
28
emma3 2023-12-05 16:43:59 +08:00
你是 8080 端口被占用,不是 80 。
|
29
28Sv0ngQfIE7Yloe 2023-12-05 16:51:26 +08:00
《提问的艺术》
|
30
chendl111 2023-12-05 23:04:31 +08:00
我一直以为 v2 里都是技术大佬的。。。
|
32
BuleGood 2023-12-06 05:41:06 +08:00
你们在讲相声吗
|
33
meiyiliya 2023-12-06 08:29:29 +08:00
我一直以为 v2 里都是技术大佬的。。。
|
34
3andwich 2023-12-06 10:35:30 +08:00
真棒
|
35
davionnini 2023-12-06 13:33:58 +08:00
lsof -i:port
|
36
coderzhangsan 2023-12-06 14:08:14 +08:00
同上,我要笑死了,原来标题是真的能唬住人的。
日志就在那里,OP 你为什么不去看呢?就算看不懂,也可以复制粘贴查下吧。 |
37
x250881478 2023-12-06 17:58:44 +08:00
根据关键词查进程:sudo -S ps aux | grep "nginx"
|
38
x250881478 2023-12-06 18:02:26 +08:00
根据端口查进程:sudo -S lsof -nP -i:80
把找到的进程, 全部 sudo kill -9 进程 id1 进程 id2 进程 id3... 如果 up 是搞 web 开发, 可以看下我的工具, 自带端口查杀, 进程查杀 https://www.macphpstudy.com/ |