woshidan's blog

そんなことよりコードにダイブ。

Permission denied: make_sock: could not bind to address 0.0.0.0:80

(13)Permission denied: make_sock: could not bind to address [::]:80
(13)Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs

【Apache】エラー対処方法 - ぱそ子のめも

 

さくらのVPSapacheを入れて、VirtualHostの設定を書いた後、

service httpd restart

で再起動しようとしたときのエラー。

 

考えられた原因

  • お化けプロセスがapacheのポートを使っている
  • logファイルへの書き込み、読み取り権限が無い
  • 1024番より小さいポート番号を使うプロセスをルート権限の無い一般ユーザで立ち上げようとした

お化けプロセスがapacheのポートを使っている

Linuxに使われる日々 : apacheのポートにハマる - livedoor Blog(ブログ)

ps aux | grep httpd | grep Ss

で親プロセスを

ps aux | grep httpd | grep -v Ss | grep -v grep

で子プロセスを確認し、それらをみんな殺して、もう一回やってみる

 

結果: 駄目

 

logファイルへの書き込み、読み取り権限が無い

Unable to open logs

ってあったので、

.confファイルで指定している、ErrorLogなどの出力先にapacheユーザが書き込み、読み込み権限をもっていないため?

と思ったのでchmodで一般ユーザに対して読み込み、書き込み権限を与えてみる

結果:駄目

 

1024番より小さい番号のポートを使うプロセスをルート権限の無い一般ユーザで立ち上げようとした

聞いたことがあったような気がしたのだけれど、1024番より小さいポート番号を使うプロセスは一般ユーザでは立ち上げられないそうな。

sudo service httpd restart

sudoで実行したら動きました。

 

以上。