1. ホーム
  2. Linux

nginx: [emerg] 0.0.0.0:80 への bind() に失敗しました (13: Permission denied)。

2022-02-21 04:21:43
nginx: 設定ファイル /home/work/local-qc/nginx/conf/nginx.conf のシンタックスは OK です。

nginx: [emerg] 0.0.0.0:80 への bind() に失敗しました (13: Permission denied)。
nginx: 設定ファイル /home/work/local-qc/nginx/conf/nginx.conf のテストに失敗しました。
理由:現在のユーザーは、その場所への書き込み権限を持っていません。
回避策
1. sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf というコマンドで、root 権限で起動するようにします。
2. sudo chmod -R a+rw /usr/local/nginx で全ユーザーに権限を付与します(個人学習、セキュリティの心配はありません)。


 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf   Nginxの起動

注意:非 root 権限で起動した場合、エラー nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied) というエラーが発生します。
理由 Linuxではrootユーザのみが1024以下のポートを使用可能です。
解決方法 1. ルート権限で起動する
 2. usr/local/nginx/conf/nginx.conf ファイル内の 80 番ポートを 1024 以上に変更する。
サーバー <未定義
リッスン80
<スパン リッスン 8080
......
}