【解説】hostsファイルとは?

プログラミング
  • hostsファイルとはなんだろう?
  • どうやって使うのだろう?

こんにちわ、きよあきです。

今回はhostsファイルについて解説します。

共同開発をしていたり、環境周りの設定を検討していたりすると、「hostsに設定すれば良いんじゃない?」などと急に言われる場合があります。

そもそもhostsファイルとはなんでしょうか?

hostsファイルとは?

hostsファイルとは、各PCごとにデフォルトで配置されているIPアドレスとドメイン名の紐付けルールを設定するファイルです。

IPアドレスとドメイン名を紐付けると言えばDNSの役割でもありますが、hostsに設定することで、個別のPCでDNSと同様の働きをすることができます。

DNSとは?

DNSとは、Domain Name Systemの略称で、ドメイン名とIPアドレスを紐づけるシステムです。

IPアドレスはインターネットに接続されたすべての端末に割り振られています。

IPアドレスは「192.168.0.1」のように、3桁の数字の4つの組み合わせで表現されます。しかし人が見た時に、より分かりやすく端末を判断するために、IPアドレスをドメイン名で表現するようにしたのがこのシステムの特徴です。

例えば、本サイトのURLは「https://kiyoakiweb.com/」ですが、「kiyoakiweb.com」の部分がドメイン名となります。webサイトはアクセスする時にIPアドレスを指定するのではなく、ドメイン名を指定してアクセスできるのはDNSの仕組みのおかげです。

設定方法について

hostsファイルの設定方法について、まずはファイルの配置されている場所ですが、各OSによって配置場所が異なります。

Windows

C:\Windows\System32\drivers\etc\hosts

Mac OS X

/private/etc/hosts

Linux

/etc/hosts

hostsファイルの中身は下記のようになっています。

IPアドレスとドメイン名の紐付けをhostsファイルに設定するには、下記のようにhostsファイルの最下行に「192.168.0.1 test domain.com」のようにIPアドレス、半角スペース、ドメイン名の順に1行目記載します。

ちなみに、元々記載されている#が先頭の行は、コメントアウトのため機能していません。

hostsファイルをテキストエディタで編集する際は管理者権限が必要なので、直接修正できない場合は一度デスクトップへコピーして、編集したものを上書き保存してください。

具体的な利用例

個人開発の際に、Apache Tomcatを起動すると、ブラウザから自端末のサイトにアクセスする際に「http://localhost:8080/」でアクセスすることができます。

また、開発時に本番環境のドメイン名を設定値に使用する場合、ローカル環境で動作確認をするためにhostsにドメイン名を設定し、テストすることができます。

まとめ

今回は開発時に利用することがあるかもしれないhostsファイルの配置場所、修正方法、利用例を紹介しました。

補足ですが、hostsの設定は社内ネットワークではプロキシによって、反映されなかったりするようです。

「HTTPにhostsファイルが反映されない」(1) System Insider − @IT
「HTTPにhostsファイルが反映されない」に関する質問と回答の一覧です。(1) System Insider − @IT

コメント

タイトルとURLをコピーしました