ArsenoXTは、自由に投稿できる辞書CGIです。
これの特徴は、
細かいところを上げるときりがありませんが、こんなところですか。
稼動条件は、ホームページスペースにおいて、自作CGIおよびPerl 5.004以上が使用できることです。
それではまず、CGI設置に移る前に、下のすべてのファイルがあることを確認してください。
ファイル名 | 解説 | 編集 | パーミッション |
dl.cgi | CGI本体(左フレーム起動用) | Perlパスだけ○。 |
755 or 705 |
dr.cgi | CGI本体(右フレーム起動用) | Perlパスだけ○。 |
755 or 705 |
dlmain.pl [update!] | CGI本体(左フレーム本体) | 自信があれば○。 |
644 or 604 |
drmain.pl [update!] | CGI本体(右フレーム本体) | 自信があれば○。 |
644 or 604 |
addtag.pl | 自動リンクルーチン | × |
644 or 604 |
util.cgi | 各種処理部分 | × |
644 or 604 |
item.pl [update!] |
項目部分データベース処理 |
× |
644 or 604 |
defs.pl |
投稿部分データベース処理 |
× |
644 or 604 |
Log_DB.pm [update!] |
最近の投稿情報記録用処理 |
× |
644 or 604 |
kanachg.pl |
読み→ソート順序変換処理 |
× |
644 or 604 |
INIT.pm [new!] (Ver1.40にて、init.cgiをバージョンチェックのためモジュール化) (Ver1.37でLog_DB.pm用設定が追加された) |
設定ファイル | ○。ただし説明を読んでください。 |
644 or 604 |
index.html | 親フレームファイル | FRAMEタグ以外の部分は○。 |
644 or 604 |
top.html | 表紙ファイル (index.htmlにアクセスすると、右側に最初に表示されます) |
○ |
644 or 604 |
working.html |
作業中表示ファイル(管理モードで作業中の時に、通常モードでアクセスされたときに表示されます) |
○ |
644 or 604 |
ie.css | Internet Explorer専用スタイルシート | ○ |
644 or 604 |
readme.html | この説明書。 | やりたければどうぞ(笑) |
|
lib.zip |
ArsenoXTで使用する標準ライブラリパッケージ |
| |
lib/ | ライブラリ用ディレクトリ |
755 or 705 | |
lib/cgiheader.pl | htmlヘッダ出力・エラー処理ルーチン |
644 or 604 | |
lib/printlog.pm (以前のprintlog.plをわずかに変更) |
表示した情報をデバッグ用にprinted.txtにも出力する |
644 or 604 | |
lib/jcode.pl | 日本語処理ライブラリ |
644 or 604 | |
lib/mylog.pm | アクセスログ記録用パッケージ(logfileにスクリプトの起動時刻と終了時刻を記録) |
644 or 604 | |
lib/mytime.pm | 時刻の変換処理(time::local使用) |
644 or 604 | |
付録 |
|
|
|
revive.cgi |
index.txtが破損したときに、他のデータファイルからindex.txtを復旧するスクリプト。 (以前のバージョンを使用していて、index.txtが破壊されてしまった人用) |
Perlパスだけ○。 |
755 or 705 |
設定ファイル init.cgi をエディタで開いて、最初のほうにある
$INIT::password =
'yourpass'; |
の yourpass の部分を自分の好きなパスワードに変更してください。このパスワードで管理モードへ入れます。パスワードに使う文字はアルファベットと数字だけにしておくのが無難です。
次に、ログファイルを作成するディレクトリ名(「ディレクトリ」が解らない方は、「フォルダ」のようなものだと思って下さい)を決めます。その下の行の
$INIT::logdir =
'log'; |
の log の部分を好きな名前に変更してください。この説明書では mylog としたとします。
最後に、CGIから出るときのリンク先(dl.cgiからみたリンク先)を指定します。さらに下の行の
$INIT::home =
'../index.html'; |
の ../index.html の部分を自分のホームページの構造に合わせて書き換えてください。そのままだと親ディレクトリの index.html に戻る設定になっています。
どの変更の時にも、両端の ' (単引用符) や ;
(セミコロン)は絶対に消さないでください。これは、その他の設定項目でも同じなので、注意してください。
CGIファイル dl.cgi と dr.cgi をエディタで開いて、それぞれの1行目の
#!/usr/local/bin/perl |
を、お使いのサーバーの 「Perlのパス」に合わせてください。CGIが使えるのならどこかに書いてあるか、サーバの管理者に訊けばわかるはずです。ほとんどの場合このままか、
#!/usr/bin/perl |
でだいじょうぶだと思います。
この readme.htmlとlib.zip を除くすべてのファイルと、libフォルダをFTPで、この辞書CGI用に使うディレクトリに転送します。転送には、「ASCII(アスキー)モード」 を使ってください。
ここでは、「dic」というディレクトリにアップしたとします。
ログファイル用のディレクトリを作成します。CGIがあるディレクトリ(この説明では、"dic" というディレクトリ)の中に、手順1.の 「 $INIT::logdir = '〜'; 」 で決めた名前の、新しいディレクトリを作ってください。
ここでは 「 mylog 」でした。
パーミッション(アクセス権)を変更します。
ログファイル用のディレクトリを 705(または707,755,777のいづれか)に、
dl.cgi、dr.cgi, revive.cgiを 705(または755) に変更してください。
ここまで終わると、大体下のような構成、パーミッションになってます。
ディレクトリ「mylog」は、手順1で名前を決め、手順4で作ったディレクトリです。あなたの設定によっては名前が違います。
また、ディレクトリ「dic」の名前は、手順3でどんな名前のディレクトリにファイルを転送したかによります。
└ dic (このCGIを設置する大元のディレクトリ) 705 ├mylog (ログファイル用ディレクトリ) 707 ├dl.cgi 705 ├dr.cgi 705 ├revive.cgi 705 ├dlmain.pl 604 ├drmain.pl 604 ├addtag.pl 604 ├init.cgi 604 ├util.cgi 604 ├item.pl 604 ├defs.pl 604 ├Log_DB.pm 604 ├addtag.pl 604 ├kanachg.pl 604 ├index.html 604 ├top.html 604 ├ie.css 604 └lib 705 ├jcode.pl 604 ├printlog.pm 604 ├cgiheader.pl 604 ├mylog.pm 604 └mytime.pm 604 |
ブラウザからこのCGIの入ったディレクトリ( ここでは dic )の index.htmlにアクセスしてみます。「新しい単語を追加」というリンクをクリックして、右フレームに単語の追加用のフォームが現れれば、 dr.cgi の設置はうまくいっています。
エラーが出る場合、だいたい下のようなことが原因なのでもう確認してみてください。
たいていの場合はエラーメッセージが表示されますので、参考にしてみてください。
ここまでうまくいったら、最初に表で示した「編集可能なファイル」を編集して、デザインや機能を好きなように変更してください。
init.cgi の中身は、
$(項目名) =
(設定); |
という文の集まりです。設定を変更するときには、(設定)の部分だけを編集します。
例: $INIT::recent_link = ''single quotation'はダメ';(NG)
$INIT::recent_link = '"double quotation"はOK';(OK)
$(項目名) = <<'END';
・・・・
・・・・
END
自分でテストできる環境にないので、間違いなどがあったらArsenoXTサポート掲示板などで教えてくださると助かります。
index.html をエディタで開いて、
<FRAME src="words.html"
name="index"> |
の words.html の部分を、dl.cgi(を置く予定)の絶対URL(http://〜 で始まるURL)に変更してください。
たとえばNiftyなら 「 http://hpcgi1.nifty.com/(ユーザ名)/dic/dl.cgi 」のようになると思います。
index.html、top.html をFTPで、HTMLファイル用サーバの辞書CGI用に使うディレクトリに転送します。転送には、「ASCII(アスキー)モード」 を使ってください。
ここでは、「 dic 」というディレクトリにアップしたとします。
設定ファイル init.cgi をエディタで開いて、以下の個所を変更します。
$INIT::password =
'yourpass'; |
の yourpass の部分を自分の好きなパスワードに。このパスワードで管理モードへ入れます。パスワードに使う文字はアルファベットと数字だけにしておくのが無難です。
$INIT::logdir =
'log'; |
の log の部分を好きな名前に。これはログファイルを作成するディレクトリ名(「ディレクトリ」が解らない方は、「フォルダ」のようなものだと思って下さい)です。この説明書では mylog という名前にしたとします。
$INIT::home =
'../index.html'; |
の ../index.html の部分を、絶対URL( http://〜 で始まる自分のホームページのURL) に。CGIから出るときのリンク先(dl.cgiからみたリンク先)です。ここで説明する構成では http://homepage1.nifty.com/username/ です。
$INIT::top =
'top.html'; |
の top.html の部分を、top.htmlの絶対URL に。CGIから出るときのリンク先(dl.cgiからみたリンク先)です。ここで説明する構成では http://homepage1.nifty.com/username/dic/top.html です。
どの変更の時にも、両端の ' (単引用符) や ;
(セミコロン)は絶対に消さないでください。これは、その他の設定項目でも同じなので、注意してください。
CGIファイル dl.cgi と dr.cgi をエディタで開いて、それぞれの1行目の
#!/usr/local/bin/perl |
を、お使いのサーバーの 「Perlのパス」に合わせてください。CGIが使えるのならどこかに書いてあるか、サーバの管理者に訊けばわかるはずです。ほとんどの場合このままか、
#!/usr/bin/perl |
でだいじょうぶだと思います。
拡張子が html またはzip以外のファイル全部( dl.cgi, dr.cgi, util.cgi, init.cgi, dlmain.pl, drmain.pl, addtag.pl, ie.css)とlibフォルダをFTPで、CGI用サーバのこの辞書CGI用に使うディレクトリに転送します。転送には、「ASCII(アスキー)モード」 を使ってください。
ここでは、「 dic 」というディレクトリにアップしたとします。
ログファイル用のディレクトリを作成します。CGI用サーバの、辞書CGIがあるディレクトリ(この説明では、"dic" というディレクトリ)の中に、手順3.の 「 $INIT::logdir = '〜'; 」 で決めた名前の、新しいディレクトリを作ってください。
ここでは 「 mylog 」でした。
パーミッション(アクセス権)を変更します。
ログファイル用のディレクトリを 707 に、
dl.cgi、dr.cgi,
revive.cgiを
705 に変更してください。
ここまで終わると、大体下のような構成、パーミッションになってます。
ディレクトリ「mylog」は、手順3で名前を決め、手順6で作ったディレクトリです。あなたの設定によっては名前が違います。
また、ディレクトリ「dic」の名前は、手順2 や 手順5でどんな名前のディレクトリにファイルを転送したかによります。
HTML用サーバのホーム( http://homepage1.nifty.com/username/ など ) └dic (辞書用ディレクトリ) ├index.html ├top.html └ie.css CGI用サーバのホーム( http://hpcgi1.nifty.com/username/ など ) └ dic (このCGIを設置する大元のディレクトリ) 705 ├mylog (ログファイル用ディレクトリ) 707 ├dl.cgi 705 ├dr.cgi 705 ├revive.cgi 705 ├dlmain.pl 604 ├drmain.pl 604 ├item.pl 604 ├defs.pl 604 ├Log_DB.pm 604 ├addtag.pl 604 ├kanachg.pl 604 ├init.cgi 604 ├util.cgi 604 └lib 705 ├jcode.pl 604 ├printlog.pm 604 ├cgiheader.pl 604 ├mylog.pm 604 └mytime.pm 604 |
ブラウザからHTML用サーバの index.html にアクセスしてみます。
ここで左フレームが表示されない場合、以下のことが考えられますので直してください。
さらに「新しい単語を追加」というリンクをクリックして、右フレームに単語の追加用のフォームが現れれば、 dr.cgi の設置もうまくいっています。
ここまでうまくいったら設置は完了です。最初に表で示した「編集可能なファイル」を編集して、デザインや機能を好きなように変更してください。
init.cgi の中身は、
$(項目名) =
(設定); |
という文の集まりです。設定を変更するときには、(設定)の部分だけを編集します。
例: $INIT::recent_link = ''single quotation'はダメ';(NG)
$INIT::recent_link = '"double quotation"はOK';(OK)
$(項目名) = <<'END';
・・・・
・・・・
END
わかりづらいと思われるところだけ説明します。
$INIT::newword_ontime、$INIT::comment_onetime などで設定する「連続投稿制限」や、同じ単語やコメントを連続で投稿できない「二重投稿制限」を一時的に無効にしたり、有効に戻したりするボタンです。
辞典の使い始めで、管理者が大量に投稿したりするときなどに使える…かも知れません。
― ソ Ы \ 噂 浬 欺 圭 構 蚕 十 申 曾 箪 貼 能 表 暴 予 禄 兔 喀 媾 彌 拿 杤 歃 濬 畚 秉 綵 臀 藹 觸 軆 鐔 饅 鷭 |
Ver1.40(2002-06-16)
(thanks for うさみ, ももんが♪, and 秋良)
Ver1.37(2002-06-15)
(thanks for tomatoes and 潤)
Ver1.36(2002-06-11)
(thanks for 潤 and ツチ)
Ver1.35(2002-06-01)(thanks for ロッシ)
Ver1.34(2002-05-26)
Ver1.33(2002-05-20)
Ver1.32(2002-05-19)
Ver1.31(2002-05-09)
Ver1.30(2002-05-05)
readme.html version1.30
Copyright (C)2001-2002 by Yutaka.Hoshino as "thermon" (thermon@mindcompass.sfcgi.com )
Copyright (C)1999-2000 by "S.Ohtsuka"( hisoka@ma.vis.ne.jp )