blazer-ja-proxy README

blazer-ja-proxyは、Palmに添付されているものように、一部の文字コードにし か対応していないWWWブラウザで、日本語のサイトを閲覧するためのプロクシサー バーです。

<URL:http://palm-ja-proxy.sourceforge.jp/>に最新の情報があります。

動作に必要な環境

プロクシサーバーを動作させるマシンには、1.8.4以上のRuby、お使いのPalmか ら到達可能なネットワーク環境、目的のWWWを閲覧可能なネットワーク環境が必 要です。

インストール方法

サーバーの動作には、プログラムファイル bin/blazer-ja-proxy と設定ファイ ルです。設定ファイルについては次項を読んでください。

インストールするには、コマンドラインで以下のようにタイプしてください。 UNIX系のOSではおそらくroot権限が必要になります。

# ruby setup.rb

インストール先を変更したりすることもできます。その場合は

$ ruby setup.rb --help

を実行してみてください。

設定方法

-cオプションが指定されていない場合、プロクシサーバーは下記の順序で設定フ ァイルを探します。

  1. /etc/blazer-ja-proxy.conf
  2. ~/.blazer-ja-proxy.conf
  3. ./blazer-ja-proxy.conf

設定ファイルがみつからなかった場合はデフォルトの設定を使います。

-cオプションが指定されている場合には、オプションで指定された設定ファイル を使います。設定ファイルが読めなかった場合にはエラー終了します。

設定ファイルは、

書きます。項目名の後に何も書かなかった場合には、その設定は nil (値無し) という意味になります。

設定ファイルで設定できるのは下記の項目です。

bind address
このサーバが待ち受けるIPアドレスまたはホスト名です。設定されていない場 合は自ホスト名が使われます。
bind port
このサーバが待ち受けるポート番号です。設定されていない場合は8080番にな ります。
proxy user
このプロクシを使うことができるユーザー名とパスワードです。ユーザー名と パスワードを「:」で区切って一行に一組ずつ書いてください。何行でも指定 できます。複数行の指定があった場合には、指定されたどのユーザーもサーバ を使うことができます。パスワードは、例えばRubyを使って下記のように cryptしてください。「パスワードの文字列」は使うパスワードに置き換えて ください。パスワードが空白の場合にはそのユーザーはパスワード無しでサー バを使えますが、お薦めしません。
salt = [rand(64),rand(64)].pack("C*").tr("\x00-\x3f","A-Za-z0-9./")
puts "パスワードの文字列".crypt(salt)
gzip
このプロクシからクライアントまで送るデータをgzipするか設定します。:の 後に空白以外の文字を書いた場合、gzipします。また、設定されていない場合 にもgzipします。
devel log
開発用のログファイルのパスを設定します。サーバーが起動されるたびに上書 きされます。通信内容が記録されますので取り扱いには注意が必要です。デバ グなどに活用してください。nilあるいは設定されていないなら開発用のログ は生成されません。
server log
サーバーのログファイルのパス。システムのデーモンとして動かす場合には絶 対パスで指定するべきでしょう。nilならサーバーのログは生成されません。
server log depth
サーバーのログファイルにどの程度の情報を書き出すか指定します。fatal、 error、warn、info、あるいは、debugから選んでください。
browser charset
プロクシを通した結果の文字コードを指定します。euc、sjis、jis、utf8、あ るいは、utf16から選んでください。
proxy via

使い方

上記の設定が済んだら、サーバーにするマシンで、

blazer-ja-proxy

などとタイプしてサーバーを起動させてください。いまのところ、デーモンとし ての動作はサポートしていません。(近い将来にサポートするつもりです。)

blazer-ja-proxy > proxy.log 2>&1 &

などとしてログをとりながらバックグラウンドで動作させることをお勧めします。

BlazerなどのWWWブラウザでプロクシを設定して、WWWサイトを閲覧してください。 プロクシにホスト名を設定してうまくいかない場合には、IPアドレスを試してみ てください。

検索サイトなどで検索語句が文字化けしてしまう場合は、検索語句の入力のため のURLから閲覧しなおしてください。過去に訪れたサイトの文字コードを覚えて いて、検索語句の文字コードをそれに合わせて変換していますので、二度目から はうまく検索できるはずです。

Blazerではhttpsのサイトの閲覧にもproxyを使うようです。Blazerとプロクシサ ーバの間の通信内容は第三者に知れてしまいますので、httpsのサイトを閲覧す る際にはプロクシの設定をはずしてください。また、blazer-ja-proxy が作成す るログファイルに第三者に知られてはいけない情報が書き込まれてしまう可能性 があります。第三者に見られないように注意してください。

コマンドラインオプション

-v
サーバの状況を、標準エラー出力あるいはsyslogに、より詳しく報告します。
-c <パス>
設定ファイルのパスを指定します。指定した以外のパスからは読みこみません。
-d
デバグモードで起動する。カレントディレクトリにファイルを作り、変換前後 のHTTPヘッダや内容の一部を記録します。 この機能はまだ実装されていません。
-b
デーモンとして起動する。バックグラウンドにプロキシサーバを起動して、コ マンド自体は終了します。標準エラー出力の内容はsyslogを使って記録されま す。 この機能はまだ実装されていません。

動作の確認されている機能

作者は下記のようなことができることを確認しているハズです。

TODO

0.4.0

0.5.0

0.6.0

0.7.0

1.0.0

あとでやる

ライセンス

Copyright (C) 2006 zunda <zunda at freeshell.org>, unless otherwise stated.

This program, except for setup.rb, is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the gpl.txt for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Code in Webrick::HTTPRequest#unparsed_uri= copied from webrick/httprequest.rb,v 1.64 came with ruby 1.8.3 (2005-09-21): Copyright (c) 2000, 2001 TAKAHASHI Masayoshi, GOTOU Yuuzou, and Copyright (c) 2002 Internet Programming with Ruby writers.

setup.rb Copyright (C) 2000-2005 Minero Aoki

setup.rb is free software. You can distribute/modify this program under the terms of the GNU LGPL, Lesser General Public License version 2.1.