サーバー起動できないときの対処
エラー
$ php -S 192.168.33.10:8000
Failed to listen on 192.168.33.10:8000 (reason: Address already in use)
phpサーバー起動しようとしたらこんなエラーが。
サーバー起動するのに失敗。理由はもう使われてるアドレスだから。
やってみたこと
$ lsof -i:8000
解説
lsofコマンドはプロセスが開いているファイルを表示する。
これでは意味がよくわからなかったが、-i:8000とすることでポート番号8000のプロセスを調べることができるらしい。
lsofコマンドが使えなかったのでインストールされているか調べる。
which -a lsof
whichは指定したコマンドのフルパスを表示する。
-aはオプションで、指定したコマンドが実行可能なパスをすべて表示する。
インストールされていなかったのでインストール
sudo yum install lsof
再度
$ lsof -i:8000
しかし、これはなにも表示されなかったので失敗。
結果
二つ目の策としてpxコマンドを使おうとして、その前に一度サーバー起動に挑戦したら起動できた。
なぜだ。