綾小路龍之介の素人思考

[Tools] lit2pto のページ

KENT さんの BBS "LIGHT BORD Ver6.3" から "Web Patio Ver1.51" へのログファイルの移行が行えます。

目次

サンプルと特徴

サンプルはありません(いたずら書き込みが多いため無くしました。)。

Ver1.0とVer0.9の最大の違いはデータの置換を行う場所の違いです。それぞれ、サーバ上(Ver1.0)、ローカル上(Ver0.9)です。つまりVer0.9はPerlのインストールが必要になります。また、説明書もどこか不親切なので、問題が無ければVer1.0を利用することをお勧めします。詳しい情報は以下を参照してください。

このスクリプトを利用する上での利用規定です。必ず目を通しておいて下さい。スクリプトをダウンロードする場合、無条件に「利用規定」に同意したものとみなします。⇒利用規定

プログラムの入手

以下の書庫 (圧縮) ファイルをダウンロードします。ローカルで走る Ver0. 9 とサーバ上で走る Ver1. 0、ファイル形式として LHA 形式と ZIP 形式のいずれかをお選びください。ダウンロード後、解凍します。解凍すると以下のファイルとディレクトリが展開されます。

プログラムリスト
Ver0.9Ver1.0
LHA形式 lit2pto09.lzh lit2pto10.lzh
ZIP形式 lit2pto09.zip lit2pto10.zip
内容lit2pto09.cgilit2pto10.cgi
readme.htmlreadme.html
work/

プログラムの修正 (lit2pto.cgi Ver1.0)

ファイルコピーとディレクトリ作成

decomp_dir/(圧縮ファイルを解凍したディレクトリ) の下に、work/(ワークディレクトリ) を作成し、ワークディレクトリ (./work/) の中に LIGHT BORD の data. cgi、0001. cgi 等 past ディレクトリの中身をコピーします。

decomp_dir 内のディレクトリ構成とファイル位置は以下のとおりです。(かっこ内はパーミッションの設定値)

【ディレクトリ構成例】
decomp_dir/ (解凍ディレクトリ)
 |
 | lit2pto.cgi [705] ...本体
 | readme.html [705] ...readme
 |
 +- work [707] /
     |
     | data.cgi [606] ...LIGHT BORD 現行ログ
     | 0001.cgi [606] ...LIGHT BORD 過去ログ
     | 0002.cgi [606] ...LIGHT BORD 過去ログ
     |    :     [606]         :

修正

lit2pto.cgiをエディタで開いて以下の箇所を修正します。

必須設定項目

#!/usr/local/bin/perl
(プロバイダで定められた Perl へのパスを半角の英数字で指定します。以下項目の設定は全て半角英数字で。)
$workdir = "./work/";
(作成された作業ディレクトリです。)
$lblogfile = "./work/data.cgi";
(LIGHT BORD 現行ログファイルの指定。LIGHT BORD の設定を変更していない限り書き換える必要ありません。)
$noworpast = "0";
(追加スレッドの選択 (現行: 0、過去: 1)。現行にしておいたほうが何かと安心です。)

任意設定項目

スレッドを作るのに必要な情報です。不明な項目は書き換えないで下さい。後から Web 上で書き換えることができるものなので、とりあえず必須項目のみ変更した状態でアップして、スレッドの様子を見ることをお勧めします。

$thread="imported from LIGHT BOARD";
作成するスレッドの題名です。
$author="Ayanokouzi Ryunosuke";
スレッド作成者の名前です。
$mlad="i38w7i3@yahoo.co.jp";
書き込みがあると、Patio のスレッド追加項目にて E-mail: "表示" を選択したことになります。表示したくない場合は書き込まないで下さい。
$come="This thread was impoted from LIGHT BORD.";
このスレッドに対するコメントです。
$url="http://www.kent-web.com/";
参照先の URL です。
$pass="";
管理用のパスワードです。何も書かないでください。今後機能追加する予定です。2004/07/24 削除。書き込みがあった場合、予期しない動作があるかもしれません。
$date="";
スレッドが作成された時間を指定できます。何も書かない場合 ($date = "" とした場合) 実行した時間になります。
$ip="";
スレッドを作った IP アドレスを指定できます。何も書かない場合 ($ip = "" とした場合) ブラウザでスクリプトを実行した IP アドレスになります。
$init = "./init.cgi";
Patio のイニシャライズファイルです。通常、Patio の動作においてこのファイルの指定を変更することはできないので、めったなことがない限り書き換える必要はありません。

アップロード

以上、修正が完了したら各ファイルを patio/(スレッドを追加したい Web Patio のフォルダ) に以下のとおりに FTP 転送し、パーミッションの設定を行います。

アップロードするファイルとパーミッション
ファイル名パーミッション転送モード
lit2pto.cgi705アスキー
readme.html600アスキー
workディレクトリ707-
data.cgi606アスキー
0001.cgi等606アスキー

ホームディレクトリ以下のディレクトリ構成とファイル位置は以下のとおりです。(かっこ内はパーミッションの設定値)

【ディレクトリ構成例】
public_html (ホームディレクトリ)
 |
 +- patio /
     |
     | patio.cgi  [705]
     | regist.cgi [705]
     | init.cgi   [604]
     | index1.log [606]
     | index2.log [606]
     | jcode.pl   [604]
     | note.html
     | lit2pto.cgi[705] ...本体
     | readme.html[600] ...readme
     |
     +- work [707] /
     |   |
     |   | data.cgi [606] ...LIGHT BORD 現行ログ
     |   | 0001.cgi [606] ...LIGHT BORD 過去ログ
     |   | 0002.cgi [606] ...LIGHT BORD 過去ログ
     |   |    :     [606]         :
     |   |
     |
     +- log [707] /
     |
     +- lock [707] /
     |
     +- img / *.gif

チェックと実行

以上、設定が完了したら「チェックモード」で動作チェックを行なってみましょう。

【チェックモード】
→ lit2pto.cgi の末尾に「?check」と付けてブラウザでアクセス
例 http://〜〜/patio/lit2pto.cgi?check

表示される内容を確認したら置換実行ボタンを押す。(問題がある場合置換実行ボタンは表示されません。)

NG が出なかったら置換成功です。『ワークディレクトリの削除 NG』と出る場合があります。ワークディレクトリは、自分よりも高位のディレクトリの書き込み権が無いと削除されません。この場合手作業で削除する必要があります。

確認と削除

patio にアクセスしてトップページにスレッドが追加されているか、スレッドにアクセスできるかを調べる。

移行がうまくできていればアップロードした lit2pto. cgi を削除する

プログラムの修正(lit2pto.cgi Ver0.9)

ファイルコピーとディレクトリ作成

decomp_dir/(圧縮ファイルを解凍したディレクトリ)の下にpatioインデックスファイル(~/bbs/patio/index1.log)、LIGHT BOARDログファイル(~/bbs/light/data.cgiと~/bbs/light/past/0001.cgi等の連番ファイル)をコピー。その後、work/(ワークディレクトリ)を作成。

Ver1.0の説明とほとんど変わらないので、Ver1.0の説明も参照してください。

修正adjustment

lit2pto.cgiをエディタで開いて以下の箇所を修正します。

必須設定項目

$logdir = "./work/log";
作成された作業ディレクトリと、その下のpatioのログファイルを作るディレクトリです。
@logfiles = ("data.cgi","0001.cgi");
の行内のカッコ内にコピーしたログファイルをを半角の英数字で指定します。以下項目の設定は全て半角英数字で。(""内にファイル名を、,を忘れずに。)この作業を行わないと、初期値、つまり作業フォルダ内の"data.cgi","0001.cgi"のみを置換対象とみなします。

任意設定項目

Ver1.0の説明とほとんど変わらないので、Ver1.0の説明を参照してください。

チェックと実行check_run

最初にActivePerlをコンピューターにインストールします。説明は以下のサイトが詳しいです。⇒ActivePerlインストール例

コマンドプロンプトで作業フォルダに移動。

lit2pto.plを起動。(LIGHT BORDの記事番号は破棄されて元の記事番号順に新しく付番されます。)

アップロードupload

次にFTPソフトでアップロード、アクセス権変更を行います。

できたファイルをpatioのログフォルダにアップロード。ログファイルを作る場所が初期値のまま(このスクリプト、patio共に)なら作業ディレクトリ直下./work/の中身をそのままindex1.logのあったディレクトリにアップロードする。

ログファイル(*.datと*.cgi)のアクセス権を666に変更。

インデックスファイル(index1.log)のアクセス権を606に変更。

フォルダ(log/)のアクセス権を707に変更。

確認と削除verification_deletion

patioにアクセスしてトップページにスレッドが追加されているか、スレッドにアクセスできるかを調べる。ログファイルのアクセス権が正しくないとエラーメッセージが表示されます。

Ver1.0の説明とほとんど変わらないので、Ver1.0の説明を参照してください。

テクニカルノート(書きかけ)

このセクションはスクリプトを作る上でのサポートのために書いています。

Web Patio Ver1.51データファイル(./log/1.cgi)の構造

補足事項

製作試験環境

Windows Me, ActiveState ActivePerl 5.8, AN HTTPD Ver1.42m, infoseek isweb Basic

謝辞

このスクリプトの公開を快諾してくださったKENTさんに感謝いたします。私の周りにいる全ての方々に尊敬と感謝を。

サポート

不具合等ありましたらi38w7i3@yahoo.co.jp宛にメールをください。また、新バージョンの通知はこのページで行います。

著作権

このスクリプトはフリーなのでどうぞ自由に御使用ください。また、再配布も自由ですが、事後でも結構ですので、E-mail等いただければ幸いです。なお、著作権は綾小路龍之介が保有しています。

LIGHT BORDとWeb Patioの著作権はKENTさんに属します。

更新履歴

2004/06/27
lit2pto.cgi Ver1.0 公開
サーバ上置換、perlのインストール不要、不要ディレクトリ、ファイル削除、IPアドレス取得
2004/06/27
lit2pto.cgi Ver0.9 公開
データソート、重複記事削除、インデックスファイルの自動バックアップ、再構築

[rlwrap] telnetとかでヒストリ編集、ヒストリ呼び出し。

rlwrapとか使うとtelnetでヒストリ編集とか矢印キーでヒストリよびだしができる。readline wrapperの略ね。

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2003-12-03T05:50:15+09:00
  2. Modified: 2003-12-03T14:06:07+09:00
  3. Modified: 2011-02-24T17:26:40+09:00
  4. Generated: 2017-06-29T23:09:16+09:00