Windowsのhostsにワイルドカードを使いたい(proxy.pacの活用)


OpenShiftの試験中、例えば、「osakana.local」というADドメインに参加しているクライアント端末から、テスト環境「apps.osakana.local」に作ったOpenShift上に作ったサービスにアクセスしようとする。

このとき、ADドメインの方に「*.app.osakana.local A 192.168.12.132」といったような感じでDNSレコードが登録されていれば特に問題はない。

しかし、テスト段階では、DNS登録がされていない場合がある。その場合、c:\windows\system32\drivers\etc\hosts にエントリを書くという手段があるが、hostsファイルにはワイルドカード記述を書くことはできないので、いちいち列挙していく必要があるし、管理者権限が必要になる。

権限が低くても対処する方法があるのか確認してたところ、ブラウザのproxy設定で自動構成スクリプトproxy.pacを設定する、という適用しやすい手法があった。

まず、下記記述のproxy.pacファイルを作成する。

function FindProxyForURL(url, host) {
  if (shExpMatch(host, "*.app.osakana.local")) {
    return "PROXY 192.168.12.132";
  }
  return "DIRECT";
}

上記ファイルをproxy設定の「自動構成スクリプトを使用する」のアドレス欄で指定する。

Windows10の場合「file:///~」といった記述をしなくても、そのままのドライブパスで問題なかった。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください