農薬検査所「農薬登録情報・速報」配信システム

1 はじめに

(1) 概要

 独立行政法人農薬検査所の「農薬登録情報・速報」を RSS 等で配信するシステムです。現在のところ、配信するのはタイトルだけで内容の配信には対応していません。

(2) 特徴

 配信フォーマットは RSS1.0, RSS2.0, Atom1.0 に対応しています。また、携帯電話等で「農薬登録情報・速報」を確認することもできます(こちらも現在はタイトルのみ)。

 農薬検査所のサーバ負荷を考慮し、農薬検査所から取得したデータを配信サーバ側に保存し、農薬検査所のデータに変更があった場合だけ取得し直すようにしています。

2 動作環境

(1) スクリプト実行条件

 本システムは、Apache モジュール版の PHP4.3 以上で動作します。動作確認は、Apache 1.3.34 + PHP 4.4.2 で行っています。
 なお、日本語文字コード変換を行っているため、マルチバイト文字列関数(mbstring)が使用可能な PHP が必須です。

(2) 必要ライブラリ

 本システムを使用するためには、アーカイブに含まれるファイルのほかに、PEARHTTP_Request パッケージが必要です(さらに HTTP_Request は Net_URL, Net_Socket, PEAR パッケージを使用します)。同梱の chkpac.php をサーバに転送して実行すると、インストールされていないパッケージが列挙されますので、必要なパッケージをダウンロードしてください。

(3) 必要ツール

 本システムのインストールやカスタマイズのために、FTP クライアントソフトとテキストエディタが必要です。日本語文字コードは UTF-8N を基本としているため、テキストエディタは UTF-8N に対応したものが必要です。フリーソフトでは、JmEditorMkEditor がお勧めです。

3 使用方法

 下記に基づき、システムをサーバ上に設置します。設置後のイメージは、下図のようになります。

feed   フィードシステムルートディレクトリ
acis   本システム用ディレクトリ
getnews.php   「農薬登録情報・速報」データ受信用共有サブスクリプト
news.dat   受信データ保存ファイル(パーミッション 666 | 606)
rss1.php   RSS1.0 配信用メインスクリプト
rss2.php   RSS2.0 配信用メインスクリプト
atom1.php   Atom1.0 配信用メインスクリプト
index.php   携帯端末閲覧用メインスクリプト
feedlib.php   フィード用共有ライブラリ
index.htm   上位ディレクトリに移動するだけのダミーファイル
HTTP HTTP 関連パッケージ用ディレクトリ(ディレクトリ名変更不可)
Request.php   HTTP_Request パッケージ(インストール済みなら不要)
Net Net 関連パッケージ用ディレクトリ(ディレクトリ名変更不可)
URL.php   Net_URL パッケージ(インストール済みなら不要)
Socket.php   Net_Socket パッケージ(インストール済みなら不要)
PEAR.php   PEAR パッケージ(インストール済みなら不要)

(1) システムの設置

 ローカル HDD の任意のフォルダーに本アーカイブをディレクトリ付きで解凍し、まず feed\acis\getnews.php の下記の部分を修正してください。

 サーバの HTTP 用仮想ルートディレクトリに feed ディレクトリ以下の全てのディレクトリ及びファイルを丸ごとテキストモードで転送します($feedpath を変更した場合は、転送先を指定したパスにあわせてください)。転送後、acis ディレクトリ下の news.dat のパーミッションをプロバイダの推奨値にあわせて 666 または 606 に設定します($datafile を変更した場合は、受信データ保存ファイル名も変更してください)。

 chkpac.php の結果に基づき、ダウンロードしたファイルから必要なファイルを解凍し、上記設置イメージに従って転送します。

getnews.php 修正箇所
内  容 意  味 備    考
6 $domain = 'macs.o-ya.net'; ドメイン名 自分のドメイン名に必ず変更する
7 $feedpath = '/feed/acis'; フィードパス 本システム設置場所の絶対パス(最後のスラッシュは付けない)
8 $datafile = 'news.dat'; データファイル名 受信データを保存するファイル名
9 $libpath = '../'; ライブラリパス 設置イメージ以外のディレクトリにライブラリをコピーした場合は、そのディレクトリへの相対パスを指定する

(2) スクリプトの実行

 必要に応じて、メインスクリプト rss1.php, rss2.php, atom1.php, index.php のいずれかを呼び出します。
 ブラウザ等の RSS オートディテクトに対応させる場合は、携帯農薬検索実験室の固定端末トップページのソースを参考にしてください。

4 留意事項

(1) 利用/改変条件

 本ソフトウェアはフリーソフトです。自由に(無料で)本ソフトウェアをご自分のウェブサイトに設置し、利用することができます。ただし、サイト上のどこかに携帯農薬検索実験室へのリンクを張って、本ソフトウェアを使用している旨を明記してください。

 また、本ソフトウェアは自由に改変して利用することができます。ただし、改変したソフトウェアを本ソフトウェアと同じ条件で、携帯農薬検索実験室/実験成果に公開することを義務づけます。

 なお、本ソフトウェアをベースとしたシステムを商利用に供することは禁止します。ただし、ここでいう商利用とは、本ソフトウェアの販売や、本ソフトウェアを利用した有料サイトの構築を指します。たとえば、農薬販売業者が職員への情報提供や顧客サービスのために自社サイトに本ソフトウェアを設置し、無償で公開する場合は商利用には当たりません。

(2) 著作権

 本ソフトウェアの著作権は、Hidemi Oya が留保します。本ソフトウェアを改変した場合、原作者の著作権表示を削除することは禁止します(改変者の著作権表示を追加することは自由です)。

(3) 免責

 本ソフトウェアのバグ等によって利用者やサーバに何らかの損害を与えるようなことがあっても、作者は補償やバージョンアップの責務を負いません。自己責任でご利用ください。

(4) サポート

 本ソフトウェアのサポートは、携帯農薬検索実験室/研究会で行います。本ソフトウェアは農薬検査所とは全く関係ありませんので、本ソフトウェアに関して農薬検査所に問い合わせなどを行うことは厳に謹んでください

5 開発履歴

Version 1.0.0 (2006/5/12)

 タイトルのみの配信機能でファーストリリース。

Version 1.1.0 (2006/5/16)

  1. パッケージチェッカの追加
  2. ユーザエリアのパッケージへのサーチパス設定機能追加
  3. HTTP アクセスパッケージを HTTP_Client から HTTP_Request に変更