hostsファイルで公開前確認!基本的な役割や設定方法をご紹介!
Webサイトリニューアルの際、DNSを切り替える前に公開前のサイトをチェックしたい場合、どのように行うのが適切なのでしょうか?「hosts(ホスツ)ファイル」を使用すれば、外部には非公開の状態で、担当者だけが正式ドメインでWebサイトをチェックすることできます。今回はサイトリニューアルをする際に便利なhostsファイルの基本的な役割、設定方法を解説します。
目次
hostsファイルとは?
hostsファイルとはDNSの役割と似ており、IPアドレスとドメイン名の一覧のことを指します。といってもなかなか理解しにくいと思いますので、まずはDNSの役割を見ていきましょう。
DNSとは
DNSは、Domain Name Systemの略で、IPアドレスとドメイン名を変換する、いわば翻訳機のようなシステムです。
IPアドレスは「192.168.1.2」などの数字の羅列で、インターネットに接続している機器が割り当てられる住所のようなもので、Webサイトにアクセスしたり、メールを送信したりする際に、機器同士はこのIPアドレスをもとに通信を行っています。
しかし、人間がこの数字の羅列を見てもなかなか覚えられなかったり、記述ミスをすることがあると思います。そこで、人間でも分かりやすいようにIPアドレスを言い換えたのが「ドメイン名」です。
つまりIPアドレスとドメインは相互に関連づいていて、DNSはこの関連付けを管理しています。例えば、「https://itra.co.jp/」にアクセスしたとき、DNSは関連づいている「192.168.1.2」を見つけ出し、機器に送信、機器はそれをもとに「https://itra.co.jp/」にたどり着くことができるという仕組みになっています。
hostsファイルとは
本題に戻りますが、hostsファイルはこのDNSと似たような仕組みを持っており、IPアドレスとドメイン名を関連付けるテキストファイルです。DNSとのちがいは、範囲があげられます。DNSはネットワークにつながっている機器全体が範囲となっていますが、hostsファイルは、そのファイルが設置されている機器のみが影響範囲です。
また、hostsファイルはDNSよりも先に参照されます。そのため、古いサーバーから新しいサーバーへ参照先を変更したい場合、hostsファイルを変更してからDNSの設定を行いましょう。
読み方はホスツファイルで、hostsファイルの役割を簡潔に説明すると、コンピュータのIPアドレスと対応するドメイン名が分かるように保存しておくことです。
例えば、コンピュータの「hostsファイル」に
192.168.1.2 sample.co.jp
と記載したとします。
するとコンピュータのブラウザで、URLを入力するフォームに「sample.co.jp」というドメイン名を入力すると、そのサーバーのIPアドレスは「192.168.1.2」だとコンピュータが解釈してくれます。
WebMedia参考記事
ドメインとDNSの違いを理解していますか?
https://www.itra.co.jp/webmedia/domain_dns_difference.html
ドメインとDNS。名前は聞いたことがあるけど違いが分からないという方も多いのではないでしょうか? インターネットの根幹...
hostsファイルの役割
hostsファイルは先述の通り、DNSのような役割を果たしますが、特徴的な点としては、直接DNS情報を編集することなくサーバーを切り替えができる点があげられます。
DNSを使わない社内用Webサイトに有効
hostsファイルを使用することで、社内用Webサイトを第三者に閲覧されることなく未公開のまま閲覧できます。
DNSは全世界に公開されている仕組みです。DNSに登録すること=インターネットに広く公開するということになり、どこからもリンクが張られていなくても検索エンジンがDNSを読みにいき、検索結果として出てくることがあります。社内だけで参照したいWebサイトで、ドメイン名から内容を類推されることも避けたいケースなど、ほかのアクセス制限と合わせてDNSに登録しないという手段がとられることがあります。
社内専用の未公開Webサイトを閲覧する場合、社内に、社内専用のDNSを1台設置するという方法をとることもできますが、手間に対してとコストが見合いません。そのため、社内サイトなどのWebサイトを未公開のまま、限られた人のみアクセスを可能にすること、いわゆるIP制限を行う際にhostsファイルが使用されます。hostsファイルはクライアントPC側にあり、DNSと同じような働きをしています。閲覧する側のPCのhostsファイルにサーバーのIPアドレスとドメイン名(ホスト名)を追加するだけで、未公開のWebサイトを見ることができるようになります。
hostsファイルの設定方法
では実際にhostsファイルの設定を行いましょう。
hostsファイルの設定方法としてWindows環境とMac環境の2つを紹介します。
Windows環境
1)メモ帳を管理者として起動します。メモ帳を右クリックし、管理者として実行をクリックします。
Windows 7:スタートメニュー>全てのプログラム>アクセサリ>メモ帳
Windows 10:スタートメニュー>検索>「メモ帳」と入力
2)メモ帳が起動したら、ファイル>開くをクリックします。
3)C:\Windows\System32\drivers\etc\hostsと入力し、開くをクリックします。
4)hostsファイルが開いたら、一番下の行に下記を追加します。
サーバーのIPアドレス [半角スペース] ドメイン名
例えばサーバーのIPアドレスが180.222.178.168、ドメイン名がexample.netの場合、次のように設定します。
180.222.178.168 example.net
www付きのURLでアクセスしたい場合は、次のように設定します。
180.222.178.168 www.example.net
※半角スペースは複数入力したり、代わりにTabを使用しても問題ありません。
5)ファイル>上書き保存をクリックすると、設定が反映されます。
6)ドメイン名でmixhostにアクセスできることをご確認下さい。
7)作業が終わったら、必ずhostsファイルに追加した設定を削除し、上書き保存を実行して下さい。
Mac環境
1)ターミナルを起動します。アプリケーション>ユーティリティ>ターミナル.appを起動して下さい。
2)次のコマンドを入力し、Enterを押して下さい。
sudo vi /private/etc/hosts
3)Password: と表示されたら、アカウントのパスワードを入力して下さい。パスワードを入力しても文字は表示されませんが、そのままEnterを押して下さい。
4)viエディタが起動し、次のような画面が表示されます。
5)Iキーを押すと入力状態になりますので、カーソルキーとEnterを使用して、一番下の行に以下の記述を追加します。
サーバーのIPアドレス[半角スペース]ドメイン名
例えばサーバーのIPアドレスが180.222.178.168、ドメイン名がexample.netの場合、次のように設定します。
180.222.178.168 example.net
www付きのURLでアクセスしたい場合は、次のように設定します。
180.222.178.168 www.example.net
※半角スペースは複数入力したり、代わりにTabを使用しても問題ありません。
6)Escキーを押し、入力状態を解除します。そのまま:wqと入力して、Enterを押すと、変更が保存され、viエディタが終了します。
7)ドメイン名でmixhostにアクセスできることを確認して下さい。
8)作業が終わったら、必ずhostsファイルに追加した設定を削除して下さい。
hostsファイルの活用法
活用法1. 公開前サイトの修正
hostsファイルを使わずにサーバー移行を進めた場合、
①DNS切り替え
②確認作業
③問題があった場合には修正
という手順になります。この場合には不完全なWebサイトをユーザーに見られながら修正作業をしているという状態になります。もしも不具合が多数見つかった場合はDNSを再び元に戻して作業することになりますが、もとに戻した場合にも浸透時間がかかるため、やはり不完全なサイトを見られてしまうリスクがあります。そのため規模の大きな企業のコーポレイトサイトでは、たとえ数時間でもダメージが大きいものです。
その点、hostsファイルを使えば、
①hosts設定
②確認作業
③問題があった場合には修正
④DNS切り替え
という手順で進められるため、ユーザーに不完全なサイトを一切見られることなく、修正を終えられます。
活用法2. WordPressの動作チェック
WordPressの動作チェックを行う場合は、hostsファイルを設定して本番ドメインで構築作業を行い、動作確認も完全に済ませてからDNSの切り替えを行う方が適切です。理由は[活用法1]と同様、修正過程を見られないようにすることができるからです。
CMSとして使われるWordPressは、作成中のサーバーのURLがデータベースに書き込まれる仕様になっているため、ドメインを移動すると動作しなくなります。そこで通常WordPressサイトでは、開発時には別のドメインで構築し、公開時にプラグイン等を使用してドメイン移動作業を行います。
活用法3. SSLサーバー証明書の適用チェック
また、SSLが効いているかをチェックするのにも、hostsファイルは有効です。SSLサーバー証明書は、ドメインに対して発行されているものなので、本番用途を異なる開発用のドメインで確認することはできません。もしもSSLサーバー証明書に不備があった場合、CA(認証局)に再発行を依頼することになり、時間がかかります。セキュリティを万全にするためにも、hostsファイルを使ってSSL通信に成功しているかどうかを確かめた後に、DNS切り替えを行いましょう。
まとめ
hostsファイルは記述や仕組みはシンプルなものですが、適切に設定することでネットワークのセキュリティを強固にしてくれます。特にWebサイトリニューアルの際、hostsファイルの設定を行い確認作業をすることで、第三者に閲覧されることなく修正作業をすることができるというメリットがあります。データベースの情報が他者に閲覧されることを防ぐため、hostsファイルの設定を適切に行い、セキュリティを向上させていきましょう。
この記事の著者
ITRA株式会社
官公庁や大手企業を中心とした大規模なWebサイトを総合的にプロデュースするWeb制作会社。デザインからシステム、サーバーまでWebサイトに関わるお客様の悩みを解決します。
初めて使う人にも使いやすく、セキュリティレベルの高いCMSパッケージ「iCMS」
詳しくはこちら