Reactを使っているとcreate-react-appが必須なのですが、そのドキュメントページであるcreate-react-app.devにアクセス出来ない問題が起きており、困っていました。
そもそも.devドメイン全てにアクセス出来ない状態だったのですが、.devドメイン自体がほぼ無いためそのことにも気付いていませんでした。
今回ようやく解決出来たため、記事にしておきます。
ポイント
解決法だけ知りたい方は「解決方法」のところだけ見て下さい。
問題
冒頭に述べた通りcreate-react-app.devにアクセス出来ないという問題が起こっていました。
私の場合Macbook Proでのみアクセスできず、同じネットワーク内のWindowsではアクセス出来たため、一体なぜなのかさっぱり分かりませんでした。
.devはめったにないため、私からすると「なぜか一つのサイトだけ表示出来ない」という謎の現象になっていました。
解決までの経緯
Mac以外でならアクセス出来ていたため、「困るけど、まあいいか」くらいに思っていたのですが、最近とある理由でDNSのことについて調べる機会があり、「そもそもIPアドレスは取得できているのか」という疑問が湧きました。
IPアドレスを確認
MacとWindowsでIPアドレスの確認方法は違うのですが、Macではネットワークユーティリティを使います。
SpotlightなどでMacの「ネットワークユーティリティ」を起動し、Tracerouteタブでcreate-react-app.devの形で入力します。
「Trace」ボタンを押すとIPアドレスが取得できるのですが、なぜかlocalhost(127.0.0.1)を指しています。
解決方法
.devドメインがアクセス出来ないのでは?という仮説を立て調べてみたところ、Stackoverflowに質問があったのでその通りにやってみます。
まずはls /etc/resolver
でdevファイルがあるか確認します。
私の場合はdevファイルが存在しており、どうやらこれのせいで問題が起こっているようです。
# Lovingly generated by Pow nameserver 127.0.0.1 port 20560
どうやらPowというrailsなどで使うサーバが自動で生成したものらしい。
(まったく身に覚えがない)
単純にこのファイルを削除してもいいですし、別の名前にリネームしてもいいです。
私は以下のようにしました。
sudo mv /etc/resolver/dev /etc/resolver/dev.ignore
これで解決。
この通り表示されました。
解決法が分からないことが地味にストレスだったためスッキリしました。
反省
昔々にやったことなので仕方がないのですが、仮想環境などを使わずにローカルによく分からないものを入れたのは間違いでした。
DNSのことも「なんとなく」把握していただけだったのも問題ですね。
今後気を付けたいと思います。