なつみかん(NATSU-MICAN)
release ver.2.3(20000120)
「なつみかん」とは
「なつみかん(NATSU-MICAN)」とは、ふるふるさんが「ぽぽぽ」で用いるために開発した「みかん(MICAN)」というシステムをひやが改造して作ったもので、「天野アンテナ」のために開発されました。
何をするシステムかというと、ある(複数)サイトの更新された時間を、様々な方法を用いてそれぞれ取得し、これをリスト化してHTMLとして書き出すシステムです。
同様のシステムとして「朝日奈アンテナ」がとても有名ですが、朝日奈アンテナから必要な部分だけを強化し、高速化しています。
ちなみに、なぜ「なつみかん」かというと、ひやが夏が好きだからです。天野みどりも夏のキャラだし(^^;
「朝日奈系」に対抗して「柑橘系」とでも呼んであげてください(笑)
オフィシャルサイトはこちらです。
http://amano.hauN.org/natsumican.html
「なつみかん」でできること
- 他の更新時刻取得サイトが書き出す情報からの更新時刻取得(リモート情報取得)に特化しており、様々な形式(LIRS形式、hina.txt(朝日奈アンテナ形式)形式、DI形式、わっちりんく(す)形式など)から情報取得できます。
- リモート取得で更新時刻を得られなかった場合、自動的にHTTP/1.1のHEADリクエストによる取得に切り替えて試み、更新時刻が得られなかった場合、HTTP/1.0のGETリクエストに切り替えて、そのコンテンツ内に表記してある更新時刻を取得しようとします。それでも情報が取得できなかった場合は、ファイルサイズに変更があったかどうか判断して更新されたかチェックします。
そして、最終的にネットワーク障害などで更新時刻が取得できない場合には、過去に得た情報を利用します。
- 自力取得時でも、HTTPヘッダーのif-modified-sinceを活用することで、相手先のファイルが更新されていなかったとき余計なアクセスをしません。
- ローカルファイルからのリモート情報・サイト情報の取得も容易です。同一サーバーに複数の更新時刻取得サイトや更新時刻を得たいサイトがある場合に有効です。
- 他のリモートサイトに情報を提供できるように、LIRS形式で情報を出力できます。また、hina.txt(朝日奈アンテナ形式)、DI形式で情報を出力することもできます。(DI形式出力は完全にはDI仕様に準拠していません)。
- 取得した情報は全て新しい順に自動的にソートしてHTMLに書き出せます。もちろん、ソートしないこともできます。
- 他サイトを含め複数のLIRSファイル(もちろん自サイトの出力も)をHTMLに併出力することが可能です。
- 取得するサイトや参照するリモートサイトの情報は(LIRS形式の)データベースとして存在し、HTMLとしては用意されないので、サイトの追加や削除、整理、スクリプトにかける、Microsoft Excelへ持っていく、などが容易です。もちろん、更新時刻を得た後それをHTMLとして出力する機能も標準で持っています。
- 旬ごと・月ごと・年ごとなどで最新のURLが切り替わる場合にも、ある程度自動対応できます。
- 国際化に対応しており、サーバー設置箇所や更新時刻を得たいサイトのローカルタイムに柔軟に対応できます。また、内部時計が遅れているサーバーに対しても誤差を指定できます。
- LIRS形式を標準とし、時差(誤差)情報やファイルサイズの保持、情報の鮮度の計測などができます。
- 指定したリモート情報元から得た全ての情報の中で最新のものを選りすぐり、集約して出力することができます。この機能を用いて「子アンテナ」に情報を提供するだけの「親アンテナ」として機能させることも可能です。
- リモート情報や自力取得によって、著者やタイトル・ファイルサイズなどの情報を得ることができ、これらの情報を設定ファイルに設定しなくても自動的に補完されます。
- 取得対象サイト、リモートアンテナサイトの情報をHTTP越しに取得して利用することができます。
- HTMLとして出力する際、テンプレートやベースとなるHTMLを自由に編集できます(HTMLの知識が必要)。
- データベース中に追加情報を埋め込むことができ、それも併せてHTML出力できます(Perlの知識が多少必要)。
- スクリプトの現在の状況を動作と連携して表示するSSIも利用可能です(SSIの知識とPerlの知識が多少必要)。
- UNIX以外の環境、Windows上のPerlでも正常動作することが確認されています。(MS-DOSの知識が多少必要)
「なつみかん」の弱点
- HTTP/1.1の「Transfer-Encoding: chunked」を理解していません。よってGETリクエストはHTTP/1.0にて行っています。対応する予定も今のところありません。
- プロセスやネットワークアクセススピードの制御や管理をしていません。そのため、爆発的にCPUパワーを消費したり、回線をフルに使う瞬間があります。
- 複数接続には対応していません。対応する予定も今のところありません。
- WWWサーバーソフト名を理解できません。対応する予定も今のところありません。
- 朝日奈葉子のアンテナライフや片桐雅代のアンテナライフのように、カテゴリーごとに分けて出力するために、多少いじる必要があります(Perlの知識が多少必要:簡単にできます)。
- 情報取得方法を限定できません(一部可能)。
- 認証のかかったサイトの更新時刻を得ることができません。対応する予定も今のところありません。
「なつみかん」使用上の注意
- 「なつみかん」を利用するには、UNIXやUNIXサーバーの知識及びPerlの知識、HTMLの知識が必要です。HTTP/1.0以上、クライアントサーバー通信などの概念が解れば尚良いです。
- 「なつみかん」は、Windows上のPerl(ActivePerl 522)でも動作することが確認されています。この場合設定などが多少UNIXのものと違います(これらマニュアルはUNIXのものをベースに書かれています)
- 「なつみかん」ご利用の際には、Perl5.004以上が必要です(おすすめは5.005以上です)。
perl -v
とするとちょっとだけ幸せになれるかもしれません。
また、いろいろとモジュールを使っています(TimeとかIOとかFileとか)。通常Perl5.004以上がインストールされていれば大丈夫だと思いますが・・・
なお、(私はLinux詳しくないので間違えてるかも知れませんけど)「Red Hat Linux」で/usr/local/bin/perlを用いると支障が起こるらしいです。
- それから、同一ディレクトリ内に「jcode.pl」が必要です(添付はしていません)。jcode.plは
ftp://ftp.iij.ad.jp/pub/IIJ/dist/utashiro/perl/
などにあります。
- さらに、LIRS入出力のためにgzip(とその場所)が必要です。gzipの場所は、
which gzip
とするといい感じです。
Windows上のPerlで動作させるには、http://www.gzip.org/などから、Windowsで動作するgzip.exeをダウンロードする必要があります(gzip124xN.zipなど)。
- このアーカイブの中のファイルは、全て漢字コードEUC、改行コードLFになっています(Windows関連ファイルなど一部除く)。また、必ず「なつみかん」で使われる全てのファイルは漢字コードEUC、改行コードLFに統一して下さい。これを変えた場合の動作は保証しません。
- 「なつみかん」ご利用におけるいかなる事故・損害にも、当方は責任を負いかねます。
- 「なつみかん」設置の際の、FAQに類するご質問等には一切お答えしません。ここにあるものだけで自力で何とかする、というやる気のある方のみご使用下さい。
- 「なつみかん」のバグ修正やプログラムの改良の義務は作者のひやにはありません。ただ、実現するか否かはさておいて、ご報告やご提案は大歓迎です。
- アンテナと言うモノは、毎時毎時サーバーのマシンパワー、ネットワークトラフィックを発生させて情報を取得します。また、リモート取得でしたら一つの情報取得で数十サイトの更新時刻を同時に得ることができますが、自力取得となると、更新時刻を取るためだけに無駄なネットワークトラフィックが発生することになります。それを考慮に入れた上で、アンテナ新規構築を心がけて下さい。
「なつみかん」リリース最新版ダウンロード
- 「なつみかん」ver.2.3(20000120)
→ natsu2.3.tar.gz(tarball)、natsu2.3.exe(Windows自己解凍)
- 現在の最新版です。また、内容はtarballもWindows自己解凍も同じです。
「なつみかん」ドキュメント
「なつみかん」導入実績(笑)
勝手にリンクしちゃってます。ごめんなさい。
他に「なつみかん」によるコンテンツを立てていて、ここに掲載されていない箇所・あるいは「なつみかんを使ってコンテンツ作ったよー」ということがありましたら、ひや までお知らせ下さい。
「なつみかん」についてあれこれ
製作のいきさつ;
- はうンサーバーに林立する各種アンテナサイトの情報を利用するなどして、天野アンテナのはうンサーバーにおける負荷を減らしたかった
- 朝日奈2000が私の手元でどうしても動かなかった
- 取得サイトの設定ファイルをデータベース化したかった
- 朝日奈アンテナが得る情報は根底にDI作成というのがあるのですが、天野アンテナではDIのような高度な情報を生かしていない(生かすつもりもない)のに、高度な情報を時間とマシンパワーをかけて得ようとする朝日奈の挙動に不満があった
今後のこと:
すぺしゃるさんくす:
(順不同です、抜けていたらごめんなさい)
「みかん」のソースを快く提供して下さった、こにしふるふるさん
外国サーバー環境をお貸しくださった、世界のアメリカンぐっさー
「なつみかん」をハックし情報を提供して下さった、やあ3さん、ariさん、arkさん、ふぁるさん、Chinさん
バグ情報やご意見を下さった、武井 伸光さん、きぃさん、みゃけさん、NOZさん
DI論争におつきあい下さった、あづみん、janusさん
なつみかんをご利用いただいている管理者の方々、なつみかんのアンテナをご利用いただいているユーザーの皆さん。
本当にありがとうございます。
「なつみかん」著作権表示など
- 「なつみかん」はフリーソフトウェアです。ただし著作権は放棄しません。「なつみかん」の著作権はひやにあります。
- 「なつみかん」ご利用に際し、ひやが金銭の要求をすることは一切ありません。
- 「なつみかん」の動作・配布等に基づく商用利用(それに伴う直接的な金銭収受があるとみとめられる場合)をなされる場合には、事前にひやにご連絡ください。ただ、ご自身の責任に基づいてそれが行われれば、制限をするつもりはありません。
- 「なつみかん」の改造は、自己の責任に基づいてご自由に。ただ、参考にさせていただきたいので、ぜひ改造点を(もしよろしければその部分のソースも)お教え下さい。
- バグ修正やプログラムの改良の義務は作者のひやにはありません。
"NATSU-MICAN" Copyright (C) 1998-2000 hiya All Rights Reserved.
Copyright (C) 1998-2000 hiya. All Rights Reserved.
Contact : hiya@hauN.org