更新履歴

2008.12.14
カレントディレクトリの移動の際、正しいディレクトリに移動できない場合があったので修正した。

2008.11.16
一回の起動で確認するアドレスの最大数を設定できるようにした。
最大深度を設定できるようにした。
正常なアドレスが取得できないバグがあったので修正した。
posted by ST at 2008-11-16 07:09 | 更新履歴 | このブログの読者になる | 更新情報をチェックする

フィルタ設定

左のテキストBOXに正規表現、
右のテキストBOXに値を入力します。

正規表現では、
「.」は「.」に一致します。
「?」は「?」に一致します。
「*」はすべての文字列に一致します。

値は、
アドレスの取得に適用されたフィルタでは無視され、
正規表現に一致したらすべて除外されます。
各ファイル用のフィルタの場合、値が無い場合は除外。
値がある場合は値がファイルに挿入されます。
値は、サイトマップ生成のために存在します。


説明難しいんで、BIG-BONUS.NETの例で説明します。

フィルタ0
http://www.big-bonus.net/sdb/list/*
http://www.big-bonus.net/search/*
http://www.big-bonus.net/shop/search/*
http://www.big-bonus.net/shop/bidders/list/*
http://www.big-bonus.net/shop/amazon/search.cgi*
http://www.big-bonus.net/update/*
http://www.big-bonus.net/i/
フィルタ0はアドレスの取得に使われ、
動的なリストページとモバイルページのインデックスを除外しています。
動的なリストページは大量のURLが取得されてしまう可能性があるので除外しています。

フィルタ1
http://www.big-bonus.net/
http://www.big-bonus.net/sdb/
http://www.big-bonus.net/shop/
http://www.big-bonus.net/shop/amazon/
http://www.big-bonus.net/shop/bidders/
http://www.big-bonus.net/dict/list/*
http://www.big-bonus.net/bbs/*
http://www.big-bonus.net/antenna/
http://www.big-bonus.net/antenna/log/*
フィルタ1はサイトマップ以外のファイルに使われ、
リストページを除外しています。
更新履歴は記事ページのみから生成したいが、更新履歴はリストページから取得するので、
最低限のリストページはフィルタ0に入れていません。
フィルタ0により取得されたアドレスからさらにリストページを除外する設定をしています。

フィルタ2
http://www.big-bonus.net/ 1.0
http://www.big-bonus.net/antenna/content/* 0.8
http://www.big-bonus.net/sdb/html/* 0.9
http://www.big-bonus.net/shop/amazon/asin/* 0.8
http://www.big-bonus.net/shop/bidders/item/* 0.8
http://www.big-bonus.net/bbs/* 0.5
http://www.big-bonus.net/dict/html/* 0.8
* 0.6
サイトマップようのフィルタです。
取得されたすべてのアドレスを含めるため、すべてに値をつけています。
上位から比較されて一致したら終了するため、「*」は最後。
リストにないページは0.5になると思われるため0.5↑の値で設定しています。


サイトマップは、
Googleウェブマスター ツール
Yahoo!検索 サイトエクスプローラー
Webmaster Center - Live Search
で登録できます。

posted by ST at 2008-11-05 10:33 | 更新履歴 | このブログの読者になる | 更新情報をチェックする

基本設定

TOPページ
著者名
最大保存数
最大確認数
最大深度
確認ページ
適用フィルタ
の5項目はアドレスの取得とサイト全体の設定です。
確認ページは複数設定できます。
著者名は、各ページから取得できない場合はここの設定が使われます。
確認ページから確認し、更新のあった場合はそのページ以降のアドレスについても確認されます。
一回の起動では最大確認数までのアドレスを確認し、最大保存数までのアドレスが記憶されます。
深度は確認ページを0として、1クリックでいけるページは1、2クリックでいけるページは2とし、
最大深度で設定したところまでを確認します。


生成ファイル単位に
最大表示数
適用フィルタ
の2項目が設定できます。
posted by ST at 2008-11-05 10:10 | 更新履歴 | このブログの読者になる | 更新情報をチェックする

設置方法

パーミッション
[admin.cgi]
CGIです。
要求があったときに実行されるパーミッションをあたえてください。
(一般的に755、700など)
[update.pl]
Perlスクリプトです。
要求があったときに実行されるパーミッションをあたえてください。
(一般的に700など)
[style]
styleディレクトリ内のファイルはCGIから読み込まれます。
CGIから読み込めるパーミッションをあたえてください。
(一般的に644、600など)
[filter]
filterディレクトリにはCGIからファイルが生成されます。
CGIがファイルを生成できるパーミッションを与えてください。
(一般的に777、755、700など)
[file]
fileディレクトリにはPerlからファイルが生成されます。
CGIがファイルを生成できるパーミッションを与えてください。
また、HTTP接続により読み込める権限が必要です。
(一般的に755、700など)
[list.dat]
CGIから書き込めるパーミッションをあたえてください。
(一般的に666、600など)
[config.dat]
CGIから書き込めるパーミッションをあたえてください。
(一般的に666、600など)



管理ツールのアクセス権限
CGIではアクセス制限を行いません。
管理ツールは管理者以外がアクセスできるとまずいと思いますが、
adminディレクトリに.htaccessを置いてアクセス制限をかけて使用することを想定しています。

管理ツールの機能
リストからの削除機能
基本設定
フィルタ設定
ができます。
基本設定とフィルタ設定は以下を確認してください。
基本設定
フィルタ設定


update.plをcronなどで定期実行して使うことを想定しています。

ファイルはfileディレクトリ内に生成されます。
サイトマップファイルはサイトのルートディレクトリにないと無効になる可能性があると思いますが、
シンボリックリンクやmod_rewriteによってルートディレクトリ上にあるように見せることを想定しています。
posted by ST at 2008-11-05 10:01 | 更新履歴 | このブログの読者になる | 更新情報をチェックする

デザインの変更

styleディレクトリ内にサブディレクトリを作成すると、その名前のファイルがfileディレクトリに生成されます。(admin除く)
サブディレクトリ内のファイルを編集するとデザインが変えられます。
ファイルはHTML又は部分HTMLです。
コメント部分及び$SCRIPT(n)の部分にCGIから挿入されます。

初期状態で
HTML
Atom1.0
RSS1.0
RSS2.0
Sitemap0.84 (0.9?)
があります。


styleディレクトリ内のサブディレクトリには、
frame.dat
item.dat
list.dat
の3つのファイルがあります。


item.dat
ページ単位の部分HTML。
$SCRIPT(1)=URL
$SCRIPT(2)=ページのタイトル
$SCRIPT(3)=ページの説明
$SCRIPT(4)=ページの著者
$SCRIPT(10)-(17)=秒,分,時,日,月,年,曜日(英字3文字),月(英字3文字) (更新日時のローカルタイム)
$SCRIPT(20)-(27)=秒,分,時,日,月,年,曜日(英字3文字),月(英字3文字) (更新日時のグリニッジ標準時)
$SCRIPT(30)-(37)=秒,分,時,日,月,年,曜日(英字3文字),月(英字3文字) (初確認日時のローカルタイム)
$SCRIPT(40)-(47)=秒,分,時,日,月,年,曜日(英字3文字),月(英字3文字) (初確認日時のグリニッジ標準時)
$SCRIPT(50)=フィルター適用値(サイトマップ用)

list.dat
ページ単位の部分HTML。
これはRSS1.0のためにある。
$SCRIPT(n)はitem.datと同じ。
$SCRIPT(50)は無い。

frame.dat
リストファイルの枠。
$SCRIPT(1)=item.datから生成された部分HTML
$SCRIPT(2)=list.datから生成された部分HTML
$SCRIPT(3)=トップページのアドレス
$SCRIPT(4)=トップページのタイトル
$SCRIPT(5)=トップページの説明
$SCRIPT(6)=トップページの著者
$SCRIPT(10)-(17)=秒,分,時,日,月,年,曜日(英字3文字),月(英字3文字) (トップページの更新日時のローカルタイム)
$SCRIPT(20)-(27)=秒,分,時,日,月,年,曜日(英字3文字),月(英字3文字) (トップページの更新日時のグリニッジ標準時)

posted by ST at 2008-11-05 09:49 | 更新履歴 | このブログの読者になる | 更新情報をチェックする

更新履歴

自動でサイトの更新履歴を生成するスクリプト。
更新履歴はHTMLだけでなく、Atom、RSSなどのFeedも生成できるほか、
検索ロボット用のサイトマップなども生成できます。


[主な機能]
サイト上のリンクを取得して更新順のリストを生成する。
更新履歴のデザインは複数設定可なので、HTMLだけでなくFeedも生成できる。
正規表現により除外したいページのフィルタ可能。
サイトマップ用のページ優先度の設定可。


BIG-BONUS.NET更新履歴でこのスクリプトを使用しているので、サンプルはそちらを確認してください。

サンプル
設置方法
デザインの変更
更新履歴
ダウンロード

posted by ST at 2008-11-05 09:26 | 更新履歴 | このブログの読者になる | 更新情報をチェックする
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。