: bind() to 0.0.0.0:80 failed (98: Address already in use)

f:id:daihase:20190809135111p:plain

こんにちは、daihaseです。 Nginxを起動しようとして以下のようになった場合。

$ sudo /usr/local/nginx/sbin/nginx #ソースからインストールした場合
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()

 

あれ、port80は既に使用済み?! ならば80を使っているプロセスをkillしちゃいましょう。

sudo fuser -k 80/tcp

 

再度以下で起動。

$sudo /usr/local/nginx/sbin/nginx
# バイナリパッケージならservice nginx start
$ sudo lsof -i:80
COMMAND   PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   13935  root    6u  IPv4  33296      0t0  TCP *:http (LISTEN)
nginx   13936 nginx    6u  IPv4  33296      0t0  TCP *:http (LISTEN)

無事起動、備忘録でした。