ここで HTTP ヘッダフィルタを編集したり新しく作成したりします。下の図をクリックすると、説明が表示されます。
ウェブページフィルタとは違って、ヘッダフィルタではその名前がとても重要です。フィルタを適用したいヘッダの名前を付け、大文字と小文字の違いを除いて、厳密にそれにマッチしなければなりません(ここではワイルドカードは使えません)。コロン「:」の後にコメントを付けることができます。コメントはフィルタマッチングの間は無視されます。
検索と置換はウェブページフィルタエディタと同じように働きますが、ヘッダの内容のみにマッチします(ヘッダ名にはマッチしません)。
ヘッダフィルタでは基本的に、次の3つのうちのどれかをすることになります。すなわち、既存のヘッダの削除、既存のヘッダの編集、新規ヘッダの追加です。
- ヘッダを編集するには、検索表現と置換テキストが両方とも存在しなければなりません。ある種類のヘッダに常にマッチさせるためには、「*」を使用してください。
- ヘッダを削除するには、検索表現を置いて、置換テキストは空白にしてください。
- 常にヘッダを追加するには、置換テキストを置いて、検索表現は空白にしてください。
- そのヘッダが存在しない場合にだけ追加するには、置換テキストを置いて、検索表現として "(^?)" を使用してください。おかしな感じがしますか? まあそうなんです。 (^...) は NOT を表し、? は 任意の文字を表していますので、(^?) というのは、翻訳すると「いかなる文字もない」という意味になります!
マッチをテストする
検索表現や URL マッチのテストをするには、それぞれのエディットボックス上で右クリックして、ポップアップメニューから "Test matching" を選んでください。すると Proxomitron の検索表現テストウィンドウ が表示されます。ここであなたのフィルタが何をやっているのかチェックすることができます。テストしたいヘッダの内容をウィンドウに入力してください("Header-Name:" の後ろの部分だけを入力してください。そのヘッダ名自体は含めないでください。)
URL: ヘッダ
場合によっては、あるウェブページの URL 自体を変更したいと思うかもしれません。実際のヘッダではありませんが、Proxomitron は "URL:" という名前のフィルタを、特別な URL ヘッダフィルタとして扱います。この場合では、マッチは完全な URL となります(通常の URL マッチでは無視される http:// の部分を含みます)。
置換テキストでは、リダイレクトのマッチングコマンドを使いたいと思われるかもしれません。リダイレクトコマンドは、$JUMP(someurl) と $RDIR(someurl)の2種類があります。どちらを使っても、その接続を新しい(おそらくは異なった)URL にリダイレクトします。
$JUMP( ) は、ブラウザにリダイレクトコマンドを送ることで働きます。この場合、ブラウザは新しい URL を認識し、ロケーションバーに正しい URL を表示することができるので、便利に使えます。
$RDIR( ) はもっと密かに、Proxomitron の内部でリダイレクトを実行し、ブラウザにはそのことを伝えません。こちらは、ブラウザに対して、実際には別の場所にアクセスしているにもかかわらず、そのままのサイトにアクセスしていると思わせておきたい、といった場合に便利に使えます。
これは URL: ヘッダを使用して URL をリダイレクトする例です。このフィルタは、たとえば「some-site」というホストネームが与えられた場合に、それを「www.some-site.com」に変更します。これは、ホストネームにピリオドがなかった場合に、それに「www.」と「.com」を付け足すということです。(注:このフィルタは「out」欄で有効にします)
HTTP Header = URL: Dot-Communize dotless hostnames (out)
Match = http://([^./]+)\1/\2
Replace = $JUMP(http://www.\1.com/\2)
以下は、このフィルタの重要な特徴です...
- ヘッダ名が「URL: ....」で始まっています。これは URL 自身に対するフィルタであることを示しています。
- 検索では、ホストネームにドット、もしくはスラッシュが含まれていないことをチェックし([^./])、それを変数「\1」に入れています。変数「\2」は、パスの残りの部分を格納します(詳細については、マッチングルール を参照のこと)。
- 最後に、置換において、元の URL に含まれていた部分を利用して、$JUMP(...) コマンドで使う新しい URL を作り上げています。
特定の URL へのアクセスを禁止する
置換テキストにおける新オプションの「\k」を使えば、どんな接続でも読み込まれる前に禁止することができます。URL マッチと併用すれば、絶対にアクセスしない URL の「禁止リスト」を作成することができます。デフォルトのフィルタセットに含まれている「URL-Kiler:」フィルタは、この例になっていますので、ご覧ください。
MIME エンコード/デコードとパスワード
置換テキストのウィンドウで右クリックをすると、選択しているテキストの MIME エンコード/デコードのオプションが表示されます。これはパスワードが必要なサイトやプロクシサーバに、自動的にログインするのに使用することができます。ウェブサイトには、以下のようなヘッダフィルタを使用してください。
Name= Authorization:
URL= パスワードを送りたいサイトのURL
Replace= basic username:password
それから、username:password の部分を選択して、コンテクストメニューから「MIME > encode」を選びます。すると、結果は以下のような感じになるでしょう。
basic dXNlcm5hbWU6cGFzc3dvcmQ=
このフィルタを有効にすると、このルールは自動的にパスワードの文字列を送り、ログインのためのプロンプトは表示されなくなります。注意:これは、そのサイトが "basic" HTTP 認証を使用している場合だけ使用できます。デコードのオプションは後日パスワードを変更する必要が生じた際に使用できます。
プロクシサーバのパスワードを作成するにも似たようなものです。ただ、ヘッダ名を以下のようにしてください。
Name = Proxy-Authorization:
それから、あらゆる URL マッチを取り除きます(プロクシサーバはすべての URL に使われるでしょうから)。
Return to main index