サーバーアプリケーションをローカル(127.0.0.1
とかlocalhost
)で立ち上げたときに、curlやPostmanなどを使ったリクエストをすると全てのレスポンスに一定時間の遅延やタイムアウトが発生するようになった。Dockerを使っていたりしたので、PostmanやDockerの再インストール、macのクリーンインストールなどしたが全然ダメだったときに同僚からいただいたアドバイスで直ったのでその対策法を置いておく。サーバーとフロントを同時にローカルで立てたとき、macOSのアップデートのときなんかも起こることがあるらしい。
原因はローカルホストのアドレス解決がうまくいかないことらしく、hosts
のconfファイルにマシンのローカルホスト名を記述すると直りました。
hostnameコマンドでマシンのローカルホスト名を表示
$ hostname
XXX.local
/etc/hosts
を編集する
127.0.0.1
と ::1
のlocalhostの隣にマシンのローカルホスト名を追記する。sudo
が必要かもしれません
127.0.0.1 localhost XXX.local
::1 localhost XXX.local
以上です。