From: TAKADA Toshihiro <takada@palomine.stanford.edu>
Real-Date: Fri, 13 May 1994 05:56:35 -0700
Subject: [infotalk,01068] language preference feature (was: CERN httpd)
Message-Id: <199405131256.FAA00539@palomine.stanford.edu>
たかだです。宣伝。(^_^;
CERN httpd 3.0pre2 (以降かな?) と Mosaic-L10N 2.4.0 を使うと、
「同一のURLで複数の言語の文書(音声等も可)を
自動的に選択して持って来る」
という技が実現できます。
簡単な実験の仕方を以下に書きます。
--------
1. まずMosaicを起動して "Options" Menuを選択し、一番下の
"Accept Languages" という項目を選択する。
2. "Accept Languages" を選択すると、ポップアップ・ウィンドウが現れ
るので、そこに、例えば "ja" と入力して、"Accept" する。
3. その上で、"Open URL..." を用いて
http://palomine.stanford.edu/hello/hello.html
をオープンする。ここで日本語が出てきたら、めでたしめでたし。
4. "Accept Languages" を使って別の言語を選択してみる。例えば "fr"
と入力してAcceptした後、"Reload" してみる。「ぼんじゅ〜る」と
出てきたら、めでたしめでたし。
5. Accept Languages に用いるのは、ISO 639:1988 の "Code for the
representation of names of languages" です。例えば他には、
en=English, ja=Japanese, ru=Russian, el=Greek,
fr=French, de=German, es=Spanish, it=Italian,
in=Indonesian, sw=Swahili, ms=Malay, sv=Swedish
ko=Korea, iw=Hebrew, zh=Chinese,
などがあるので試してみて下さい。文書が用意されていない言語を指
定すると英語版が出るようにしてあるはずです。
6. ここには順序付きで複数の言語を書くこともできます。たとえばAccept
Language を "aa; bb; cc; de; ee" などとしてみて下さい(";"の後に
空白が必ず必要です)。aaやccやeeという言語の文書は存在しないので、
"de"に相当するドイツ語の文書が出てくるはずです。
7. Accept Languages には ISO 639 の言語コードに加えて、オプションと
して ISO 3166 の国コードを付けることが可能です。例えば "ja_JP" と
いうのは「日本で使われている日本語」を表します(日本語の場合は殆ど
意味がないですが)。
zh_CN, zh_TW, zh_HK
の3つを試してみて下さい。それぞれ、「中国、台湾、香港で使われてい
る中国語」を意味します。
8. "...hello/hello.html" の他にもうひとつ、
http://palomine.stanford.edu/radio-j/radio-j.html
も用意してみました。これは例のラジオ日本の案内文で、15か国分用
意されています。
--------
これについて、もうちょっと詳しく(ないかもしんないけど ^_^;)は、
http://www.ntt.jp/Mosaic-l10n/users.html#accept
に説明があります。言語コードや国コードの一覧も、ここから手繰れます。
また、同じ仕組みで、Accept Languageを変えて "hello.au" とかいうファ
イルにアクセスすると、違う言葉で実際に喋るとかいうのも実現できます。
同じようなことを実験してみたいという方のために、サーバ側でどんな設
定をするかを簡単に書きます。
--------
1. 単に、例えば日本語の文書なら hello.ja.html, フランス語なら
hello.fr.html という文書を作る。ただそれだけ。但し、hello.html
という文書は存在しては *いけない* 。
CERN httpd は、xxx.yy が要求されて、かつ、そのファイルが存在し
ない場合は、xxx.*.yy を探索し、うだうだと色々な計算をした結果、
それらの中から一つを選んで返すようになっている(したがって
hello.ja.au, hello.fr.au などという技も同様に使える)。
2. httpd.confに以下のようなエントリを入れる。
AddLanguage .en en
AddLanguage .ja ja
AddLanguage .fr fr
AddLanguage .de de
...
(必要なだけ書き並べる)
3. 一点だけ裏技あり。
hello.zz.html が要求されて、かつ、hello.html, hello.zz.html の
いずれも存在しなかった場合、デフォールト用の言語を指定する方法
が、まだない。その場合、何が返されるか、あるいは、返すべきかは、
色々とあってまだ決まってない。
現在のCERN httpdインプリでデフォールトを決めたい場合は、デフォー
ルトとして返したいファイル、例えば英語版の hello.en.html が、
hello.*.html の中で、direntにおいて一番最後のエントリであるよう
にしておけば良い(姑息 -_-;)。
# 上の記述が意味不明の場合は余り深く立ち入らない方が良いです。(^_^;
# その内、デフォールトを指定できるような仕組みを作ってCERNに送ろう
# と思ってますので、それまで待った方が無難かもしれない。作業してる
# と超どハマリだし。(-_-;;;
--------
そんなとこかな。
========================================================================
TAKADA Toshihiro
NTT Basic Research Labs. E-mail: takada@seraph.ntt.JP
URL: <http://www.ntt.jp/people/takada/>
Stanford University E-mail: takada@bodega.Stanford.EDU
URL: <http://bodega.stanford.edu:8080/people/takada/>
========================================================================
From: Youichi Watanabe <youchan@se.fujitsu.co.jp>
Real-Date: Fri, 13 May 1994 13:39:49 +0900
Subject: [infotalk,01067] Re: CERN httpd
Message-Id: <9405130439.AA26307@enterprise.se.fujitsu.co.jp>
youchan@ふじつう です。
In article <9405120606.AA19230@nrigw11.nri.co.jp>, Hiroyuki NAKAMURA <nakamura@nri.co.jp> writes:
中村> つい最近から cache, proxy とも試していますが、なかなか良いです。
中村> http://info.cern.ch/hypertext/WWW/Daemon/User/Guide.html をどうぞ。
そっすね。でも、cacheのexpire timeの調整がむずかしそうです。
中村> われて caching されないという症状に見舞われています。
中村> CERN httpd 3.0pre3 ですが、同様の症状のある方いらっしゃいますか?
pre4だとうまくいっています。でも、himawariだとgifはcacheしてもいいけど
それを管理しているgopher dataをcacheしてると、昨日のデータ一覧が
でてしまいますね。