Webサイトのサーバー移転でこれから移転しようとするサーバーに運用しているドメイン名で確認のためにアクセスしたいケースがあります。
そのためには、ドメイン名からIPアドレスを自己解決するためにあるhostsファイルを編集する事でそれを解決できます。
扱い方を間違うとセキュリティ的に危険なファイルになるので、取り扱うさいには十分に注意する必要です。そんな、Windowsにあるhostsファイルのある場所やその編集方法です。
Windowsのhostsファイルとは?
インターネットなどでドメインに対して名前解決を問い合わせをする場合、この指定されたドメインに対してDNSサーバーが該当するIPアドレスに変換してドメインの名前解決(サーバーのIPアドレス)をします。
このDNSサーバーが記録されているIPアドレスを返すよりも先に、Windows内でドメインに対するIPアドレスが記録されていたら、そのIPアドレスを使用して名前解決します。
このWindows内で「指定されたドメインに対するIPアドレスを記録しているファイル」がhostsファイルになります。
ちなみにWindows11/10/8.1/7などでは、このような形でWindowsのhostsファイルは記されています。
# Copyright (c) 1993-2009 Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the corresponding host name. # The IP address and the host name should be separated by at least one # space. # # Additionally, comments (such as these) may be inserted on individual # lines or following the machine name denoted by a '#' symbol. # # For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host # localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost # ::1 localhost
このWindowsのhostsファイルの行頭に#がある場合は、コメント化されている状態なので、Windowsのデフォルトの状態だと全ての行がコメント状態です。
Windowsのhostsファイルを編集するケース
ドメイン名からIPアドレスを自己解決するために、hostsファイルを編集するケースとして良くあるのが、Webサイトのサーバー移転のケースです。Webサイトを運営している状態で、AサーバーからBサーバーに移転する場合。
Webサイトを表示するのに必要なファイルなどは、Bサーバーにコピーしてある状態できちんとコピーされたかアクセスして確認するさいに、実際にドメイン名でアクセスしてもDNSサーバーが返すIPアドレスは、通常AサーバーのIPアドレスになりBサーバーにはアクセス出来ません。
そこで、このWindowsのhostsファイルにドメイン名とBサーバーのIPアドレスを記述して、運営しているWebサイトのドメインにアクセスすると、hostsファイルの記述が参照されてBサーバーにアクセスしてWebサイトを確認する事が出来るようになります。
このようにして、AサーバーからBサーバーへ移転する場合などに、一時的にドメインが参照するIPアドレスを変更したりする事が出来ます。他にもソフトウェア開発の開発環境やテスト環境などで利用したりしますが、話が深くなりすぎるのでその話はここではしません。
Windowsのhostsファイルがある場所
Windows11/10/8.1/8/7で、hostsファイルがある場所は変わりません。
C:¥Windows¥system32¥drivers¥etc¥
この場所にファイル名が「hosts」としてあります。
そのままファイルの中身を確認するなら、メモ帳やテキストエディタ等で見る事が出来ます。
Windowsのhostsファイルの編集方法
普通にファイルを開くと書き込み禁止状態
このhostsファイルをメモ帳やテキストエディタで、そのまま通常通り開いたら書き込み禁止の状態になります。
このhostsファイルの状態を確認するだけだったら、上書き禁止状態でも問題ありませんが、hostsファイルを編集するなら、2つの方法があります。
ユーザーに書き込み権限を与えて開く方法
一つは、ファイルのプロパティで編集するユーザーに書き込み許可を一時的に与えて、その後メモ帳やテキストエディタで編集する方法です。
メモ帳やテキストエディタを管理者権限で実行する方法
一つ目の方法は、書き込み権限の操作をしたりして元に戻すのを忘れてしまうと、セキュリティ的に問題があるので、もう少し手軽に編集出来る方法です。
hostsファイルを編集するメモ帳やテキストエディタを開くさいに、管理者権限でメモ帳やテキストエディタを開いて、その後hostsファイルを開いて編集する方法です。
メモ帳を管理者権限で起動するには、メモ帳の上で右クリックをして、その他から管理者として実行したら管理者権限でメモ帳を起動します。
後は、hostsファイルを開いて編集作業をして上書き保存をします。
hostsファイルへの書き方
hostsファイルに情報を書き込むのは簡単です。
「IPアドレス」「半角スペース」「ドメイン名」の形で書き込めばいいです。
# For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host # localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost # ::1 localhost 127.0.0.1 hoghoge.com
このような形です。
hogehoge.comにアクセスすると、IPアドレス127.0.0.1へアクセスするようになります。
このIPアドレスの部分に利用するサーバーのIPアドレスに書き換えて、ドメイン名の部分を指定するドメイン名に書き換えればいいです。
後はhostsファイルを上書き保存したら、ブラウザ等でドメインにアクセスしたらいいです。
ただし、場合によってはパソコンがDNSキャッシュを持った状態かもしれませんので、DNSキャッシュのクリアまでしておくと万全です。
まとめ
Webサーバー移転などの時に、触る機会があるのがWindowsのhostsファイル。
もし、hostsファイルに通常ユーザーの書き込み権限を与えてファイル編集を行ったら、編集後は必ず元の権限状態に戻しておく事を忘れずにして下さい。
最終更新日:2023/04/07
コメント