WEBプログラマーの開発PCに必須のhosts切り替えツール「SwitchHosts!」

2020年4月28日

テクノロジー

webエンジニアで自宅にサーバーを構築していない人の気持ちが理解できない、ユゲタです。

本日のIT謎掛け

「hosts」とかけまして・・・ 「名前が愛という人」と、ときます。 そのココロは・・・ アイピー(あだ名とIP)の変更に苦労するかも・・・

開発環境あるある

webサービスを構築して、本番にアップロード後、無事に公開を迎えた時に、何故か本番では想定通りの動作ができず、原因を調べてみたら、プログラムの中に開発環境(ローカル環境)での記述が残っていて、本番にアップした時にその変更し忘れが判明するという事、誰もが経験したことあるんじゃないでしょうか? ローカル環境と本番環境のサーバー構成が違う場合にも、似たようなケースが起きることもありますが、開発環境は192.168...というローカルサーバーで開発していて、本番になると公開用ドメインになるわけですが、この切り替えができていない、または、サーバーでのconf設定が正常ではないというのも、よくある話です。 この話で本当に恐ろしいのは、本番環境でしか見つけにくい不具合として考えてしまいがちな点です。 ローカル環境でも、ドメインを利用することで、こうしたトラブルは極力減らすことができます。

hostsの重要性

そこで、hostsを書き換えて対応するという事が考えられます。 すでに取得しているドメインで、DNSも設定しているんだけど、本番サーバーのIPアドレスに向いているドメインは、ローカルPCでは、hostsを書き換えることで簡単に、dnsの値を変更することができます。 注意!!!)ただし、hostsの書き換えは、自己責任にて行ってください。 ここで、hostsを知らないというエンジニアや、DNSを理解できていない人のために、少しだけ説明すると、 ドメインに対してセットしているIPアドレスを、そのPC端末のみ書き換えることができるのがhosts機能です。 DNS値を手っ取り早く確認するには、そのドメインに向けてpingコマンドを叩いてみると、DNSに登録されているIPアドレスがすぐに確認できます。 これをhostsで書き換えられていた場合は、hostsの値になるので、書き換えの確認も行えます。

hostsの書き換え方

mac , linux : etc/hosts windows : C:\Windows\System32\drivers\etc\hosts
このファイルを書き換えるだけで、hostsの設定ができてしまいます。 書き方は簡単で、 %ipアドレス %ドメイン という風に、行で分けて、いくつもドメインを登録することができます。 書き換えたファイルを保存したら、すぐに反映されるので、DNSと違って待ち時間がなくて、便利に扱えます。 もちろん、このhostsは、ドメインを一時的に書き換えるというための設定で、使ったあとは、元に戻してあげないと、その端末からのドメインアクセスが、グローバルのものと違ってしまうことになります。 webサービスを本番公開した時に、書き換えないと、本番で発生している不具合も見落としてしまいますからね。

こんなことできたらいいな・・・

自分の場合は、このhosts設定を使うのは、作業環境のローカルネットワーク内に、公開サーバーを設置しているので、同じエリアのネットワークを使っている時は、ローカルIPアドレスを使わないといけなくて、その環境の外では、グローバルIPアドレスを使う必要があります。 もちろん、hostsの設定書き換えを忘れて、外に出ている時に、アクセスできなくて、困ってしまってアタフタする事もこれまで何度かありました。 そんな時、ボタン一発でhosts設定を切り替えしてくれるアプリでもあったらいいな〜と思っていたら・・・ ありました!!! 「SwitchHosts!」というアプリで、mac,windows,linuxのどれもアプリとして揃っている優れものです。

SwitchHosts!

本家サイト https://oldj.github.io/SwitchHosts/ 上記のページから、ダウンロード(githubに飛びます)できます。 自分の環境にあったアプリをダウンロードしてインストールしましょう。 ページをみると中華系なのがわかりますが、気にしなくても大丈夫でしょう。 インストールしてアプリを立ち上げると、以下のような画面が立ち上がります。 ここに、環境ごとの設定を登録しておいて、トグルスイッチ部分をONにする設定が、反映されるワケです。 バックアップもできるし、複数環境の設定もできるので、非常にわかりやすい! コマンド叩いて確認する手間もなく、便利極まりないですね。

他の方法について

PC端末だけであれば、このSwitchHosts!だけを使えばいいんですが、手持ちのスマホや、複数のPCを使う場合を考えると、このアプリだけでは、手に負えない場合もあります。 そんな場合は、おとなしく、ルータを設置して、内部DNSを整えてあげるのがいいでしょう。 ちなみに、うちの環境は、NTTの光ルータにまかせっきりになっていて、そうしたブーメランDNS機能が、ついていない機種だったので、別途富士通製のルータを設置しようか検討中です。 環境構築って、本当に重要ですね・・・

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。