all about blosxom
Table of Contents
BlosxomStarterKitに同梱されているabout_config.txtをHTML化したページです。
blosxomをUTF-8ではなく、Shift_JISやEUC-JPなどの文字コードで利用する場合は、全てのファイルの文字コードを利用したい文字コードに統一した上で、全てのファイルを確認し、UTF-8と書かれている部分を利用したい文字コードに書き換えてやるする必要があります。この作業はとても煩雑なものなので、特に理由がない限り、UTF-8を利用することを強く推奨します。
config.cgiは拡張子がcgiになっていますが、CGIスクリプトではありません。この設定ファイルにエントリの編集パスワードを記述している都合上、第三者に設定ファイルを読まれないようにするための対策です。もっときちんとした対策をしたい場合は、第三者からはアクセスすることの出来ない場所に置くなり、ご自身で対策してください。その場合はblosxom.cgiを編集することが必要になりますが、それについては割愛します。
以下、個々の設定について説明していきます。
$blog_title = "blosxom starter kit";
普通にblosxom.cgiにアクセスした時に一番上に表示されるタイトル文字列の設定です。タイトル文字列に使用される以外に、blosxomの生成するHTMLのtitle要素やRSSのtitle要素などにも利用されます。
$blog_description = "blosxomで今すぐできるウェブログ・キット";
普通にblosxom.cgiにアクセスした時にタイトル文字列の直ぐ下に現れる文字列の設定です。そこ以外の場合ではRSSのdescription要素などにも利用されます。
$blog_language = "ja";
blosxom.cgiの生成するHTMLのhtml要素のlang属性やxml:lang属性、さらにはRSSのxml:lang属性に利用される文字列の設定です。通常はjaを変更することは無いでしょう。
$basedir = "/virtual/foo/public_html/blosxom";
blosxomを設置したディレクトリの絶対パスの設定です。この設定がblosxomの設定の中で最大の難点になっています。絶対パスというのは、あくまでも設置したサーバー上での絶対パスで、絶対URLなどではありません。通常はサーバー管理者に聞くと教えてくれるはず(一番確実です)なのですが、場合によっては教えてくれないかもしれません。そういう場合はフルパスを調べるCGI(chkfullpath.cgi)を利用するなどしてご自身でお調べください。
この設定がきちんとできていないと、まず間違いなくエントリを表示することが出来ませんので、一番気を使って設定してあげてください。
$datadir = "$basedir/entries";
blosxomのエントリを置くディレクトリの絶対パスの設定です。$basedirをきちんと設定した場合は、通常変更する必要はありません。
$url = "http://example.com/blosxom/blosxom.cgi";
blosxom.cgiにアクセスするためのURLです。空欄($url = "";)にすると、自動的にサーバーからURLを取得します。
$depth = 0;
エントリを置くディレクトリから、何階層まで辿ってエントリを探しに行くかの設定です。blosxomはエントリを置くディレクトリに、さらにディレクトリを作成することによって、エントリをカテゴライズします。通常は0を指定して再帰的に階層を辿り、エントリを置くディレクトリ以下にある全てのエントリを表示するということで問題ありません。1を指定した場合は、エントリを置くディレクトリ*のみ*対象になります。2を指定した場合は、エントリを置くディレクトリから1階層辿るということになります。
$num_entries = 15
普通にblosxom.cgiにアクセスした場合など、通常、1ページに表示されるエントリの数の設定です。15を指定すると、最近15件のエントリが表示されるということになります。数を増やすとそれだけページを生成するのに時間がかかるので、通常は5~15程度が良いと思われます。
$file_extension = "txt";
エントリと見なすファイルの拡張子の設定です。foo.txtやbar.txtをエントリとみなしたい場合は、その拡張子である「txt」を指定します。もうひとつ例をあげると、foo.entryやbar.entryをエントリとみなしたい場合は、その拡張子である「entry」を指定するということになります。
$default_flavour = "html";
flavourを省略してアクセスした場合、どのflavourを利用して表示するかという設定です。通常はhtmlのままで問題ありません。blosxom starter kitに同梱しているflavourの都合上、変更しないことをオススメします。
$show_future_entries = 0;
未来の日付けのエントリを表示するかどうかの設定です。1にすると表示するようになり、2004/12/24付けのエントリであろうと、2500/12/24付けのエントリであろうと問答無用に表示するようになります。
$plugin_dir = "$basedir/plugins";
blosxomのプラグインを置くディレクトリの絶対パスの設定です。$basedirをきちんと設定した場合は、通常変更する必要はありません。
$plugin_state_dir = "$plugin_dir/states";
blosxomのプラグインが各種情報・データを保管するのに利用するディレクトリの絶対パスの設定です。$basedirをきちんと設定した場合は、通常変更する必要はありません。
(注意) blosxom starter kitでは静的生成に関する不具合などには関知しません。基本的に、動的生成を利用することを前提に作成されています。
$static_dir = "$basedir/statics";
blosxomで静的にHTMLなどを生成する時に、その出力先になるディレクトリの絶対パスの設定です。多くの方は動的生成で利用されると思うので、特に変更する必要は無いかと思われます。
$static_password = "";
第三者に勝手に静的生成を行われないようにするためのパスワードの設定です。空にしておくと静的生成が出来ないようになるので、静的生成を利用しない場合は空にしておくべきです。
@static_flavours = qw/html rss/;
静的に生成する時に出力するflavourを指定する設定です。各flavour名を半角スペースで区切って、いくつでも指定できます。
$static_entries = 0;
静的生成時に全てのエントリごとにファイルを作成するかどうかの設定です。1を指定すると全て作成します。
blosxom.cgiにアクセスした時に右に出てくることになる、年月ごとのページへのリンク・メニューを生成するプラグインです。
$archives_reverse = 1;
リンク・メニュー上での並び順の設定です。0を指定すると時間的に古い年月が上に、1を指定すると時間的に新しい年月が上に来るようになります。
$archives_indent = "";
HTMLのソース上でのインデントに使用する文字列を指定する設定です。値にはエ
スケープ・シーケンスも使用できるので、「\t」を指定することによって、水平
タブ文字でインデントすることが可能です。
@archives_monthname = ("睦月", "如月", "弥生", "卯月", "皐月", "水無月",
"文月", "葉月", "長月", "神無月", "霜月", "師走");
月名に使用する文字列です。一月から十二月に使用したい文字列を、カンマで区切ってすべて指定します。任意の文字列が使用できます。
任意のウェブページから新規エントリをwikieditishというエントリを編集するためのプラグインを利用して作成できるようにするBookmarkletを生成するプラグインです。bookmarkletはblosxom.cgiを設置した後、
http://example.com/blosxom/blosxom.cgi/first_post.wikieditish
というようなURLにアクセスすると、上の方に「BlosxomThis?!」というリンクがありますので、それをお気に入りもしくはBookmarkに登録してください。
$bookmarklet_trackback_discovery = 1;
あるウェブページからBookmarkletで引用して新規エントリを作成しようとした時、TrackBackすることが可能なウェブページの場合、TrackBack pingの送信先URLを探すかどうかの設定です。この機能を利用するためには、blosxomを設置するサーバーにLWP::SimpleというPerlモジュールがインストールされている必要があります。また、この機能はTrackBack Auto-discoveryという仕組みを利用しているので、そのウェブページがこの仕組みに対応したソースを記述していない場合は、TrackBack pingの送信先URLを探すことは出来ません。
blosxom.cgiにアクセスした時に右に出てくることになる、カテゴリごとのページへのリンク・メニューの生成と、各エントリのカテゴリ名をディレクトリ名とは別に指定出来るようにするプラグインです。
$categories_story_count_commulative = 1;
リンク・メニューのそれぞれのリンクの最後に付けられる、カテゴリに含まれるエントリの数にその子に当たるカテゴリのエントリの数も加算するかどうかの設定です。0を指定すると加算しません。
$categories_output_format = "ul";
リンク・メニューの出力形式の設定です。ulを指定するとHTMLのul要素をネストして出力します。m4は良くわからない出力形式なので、ulのままにしておいてください。
$categories_root_name = "全てのエントリ";
リンク・メニューの最上位にあたるカテゴリの名前の設定です。任意の文字列が使用できます。
@categories_prune_dirs = qw(/old /draft);
リンク・メニューには表示しないカテゴリの設定です。半角スペースで区切って、複数指定することが可能です。"/foo"を指定した場合、"/foo/bar"や"/foo/hoge"などは除外されますが、"/foo"自体は除外されません。
%categories_aliases = ( 'blog' => 'ウェブログ', 'plugins' => 'プラグイン', 'internet' => 'インターネット', );
リンク・メニュー及び各エントリでカテゴリを示す文字列の設定です。blosxomではディレクトリ名がそのままカテゴリ名になりますが、この設定によって、別の名前を任意につけることが出来ます。上記の例では「blog」というディレクトリが「ウェブログ」というカテゴリ名で表示されるということになります。
$categories_sep = "::";
各エントリでカテゴリを示す文字列同士を区切る文字列の設定です。複数回カテゴリを辿ったエントリの場合にのみ表示されます。上記の例の場合、エントリが「/foo/bar」というカテゴリにある場合、カテゴリを示す文字列が「foo::bar」になるということになります。
blosxomのデザインを決定するCSSファイルのパスを指定するプラグインです。
@css_paths = ( "http://example.com/blosxom/style-sites.css", "http://example.com/blosxom/alt-style-sites.css", );
blosxomのデザインを決定するCSSファイルのパスの設定です。複数指定した場合はランダムで使用されます。
年月日ごとの閲覧の場合、HTMLのtitle要素内にその年月日を流し込むプラグインです。
$date_title_title_sep = ' :: ';
$blog_titleと年月日の間に挿入する文字列の設定です。年月日ごとの閲覧の場合のみ挿入されます。上記の例の場合、2004年のエントリ一覧を閲覧しようとした場合、「 :: 2004」という文字列が$blog_titleの後ろに追加されるということになります。
$date_title_date_sep = '/';
年月日それぞれを区切る文字列の設定です。上記の例の場合、2004年2月10日のエントリ一覧を閲覧しようとした場合、「2004/02/10」がタイトルの後ろに追加されるということになります。
エントリの日付けをそのエントリファイルの更新時刻ではなく、そのエントリを最初にアップロードした日付けで固定するプラグインです。
$entries_index_datafile = "$plugin_state_dir/entries_index.dat";
エントリを最初にアップロードした日時を格納しておくファイルのパスの設定です。通常は変更する必要はありません。
個々のエントリごとの閲覧の場合、HTMLのtitle要素内にその年月日を流し込むプラグインです。
$entry_title_title_sep = ' :: ';
$blog_titleとエントリのタイトルの間に挿入する文字列の設定です。エントリごとの閲覧の場合のみ挿入されます。上記の例の場合、「テスト投稿」というタイトルのエントリを閲覧しようとした場合、「 :: テスト投稿」という文字列が$blog_titleの後ろに追加されるということになります。
Googleのサイト内検索にリダイレクトするCGIに渡すパラメータを設定するためのプラグインです。このプラグインを利用したい場合、サーバーにURI::Escapeモジュールがインストールされている必要があります。
$google_cgi_path = "$basedir/google.cgi";
同梱のgoogle.cgiへのパスの設定です。通常は変更する必要はありません。
$google_keyword = "site:example.com";
検索結果をblog内に限定するために、検索語に追加する文字列の設定です。独自ドメインを持っている場合は、上記の例のように「site:example.com」を使うと限定することが可能です。独自ドメインを持っていない場合は「inurl:」と必ずblogのページに現れる文字列($blog_titleなど)を指定すると、限定することが出来ます。詳しくはGoogleの検索シンタックスをご自身で調べてください。
デフォルトで提供されているRSSをRSS 0.91からRSS 1.0に差し替えるためのプラグインです。
$rss10::creator = 'Namae Myouji';
RSSファイル内で利用する名前の設定です。ローマ字でも日本語でも構いません。
$rss10::email = 'john-doe@example.com';
RSSファイル内で利用するメール・アドレスの設定です。
$rss10::tz_offset = '+09:00';
blosxomを設置したサーバーのタイムゾーンの設定です。日本の場合は「+9:00」のままで変更する必要はありません。
エントリの編集をオンラインで出来るようにするプラグインです。まだ存在しないファイル名を(カテゴリに入れる場合はカテゴリ名も含めて)指定すると、エントリを新規作成することも可能です。また、前述のbookmarkletプラグインと連携し、あるウェブページから文章を引用してエントリを新規作成する機能などもあります。
$wikieditish_preserve_lastmodified = 0;
wikieditishでエントリに変更を加えた場合、そのエントリの実体ファイルのタイムスタンプを更新するかどうかの設定です。blosxom starter kitの場合は、エントリのタイムスタンプでエントリの日付けを決定しないので、あまり意味の無い設定です。値を1にするとタイムスタンプを保持するようになります。
$wikieditish_require_password = 1;
エントリの編集にパスワードを要求するかどうかの設定です。通常は1のままにするべきです。値を0にすると誰でも編集できるようになります。
$wikieditish_blog_password = "";
エントリを編集するときにひつようとなるパスワードの設定です。必ず設定してください。
$wikieditish_restrict_by_ip = 0;
エントリの編集を特定のIPアドレスからのみ許可するかどうかの設定です。値を1にすると@wikieditish_ipsで設定したIPアドレスからしかエントリが編集できなくなります。固定IPアドレスを持っている場合には、こちらを利用しても良いとは思いますが、通常はパスワードを利用して編集を制限する方が良いと思います。
@wikieditish_ips = qw(127.0.0.1 192.168.0.1);
エントリの変種を許可するIPアドレスの設定です。半角スペースで区切って複数指定可能です。
$wikieditish_file_extension = $blosxom::file_extension;
wikieditishでエントリを編集後、エントリのファイルの拡張子を変更する場合の設定です。そのエントリの実態ファイルとは違う拡張子で保存したい場合、ここでその拡張子を指定します。通常は変更の必要はありません。
$wikieditish_send_pings = 0;
エントリの編集時にPing URLsとラベル付けされているtextareaで指定したURLに対してTrackBackを送信するかどうかの設定です。この設定を有効にしたい場合、サーバーにLWP::UserAgent?モジュールとHTTP::Request::Commonモジュールがインストールされている必要があります。
$wikieditish_tb_charset = "UTF-8";
上記設定に伴ない、エントリの編集時にTrackBackを送信する場合に、TrackBackの文字コードを指示するパラメータとして送信する文字列の設定です。通常は変更の必要はありませんが、blosxom starter kitをUTF-8以外で利用する場合は、その文字コードに合わせて設定する必要があります。
blosxomにコメントを投稿してもらう機能と、TrackBackを受信する機能を追加するプラグインです。
$writeback_dir = "$plugin_state_dir/writebacks";
コメントやTrackBackのデータを格納するディレクトリのパスの設定です。通常は変更する必要はありません。writebackプラグインはこのディレクトリにファイルやディレクトリを更に作成するので、このディレクトリに、適切なパーミッションを指定することによって、writebackから書き込みが出来るようにしてやる必要があります(パーミッションの設定についてはreadme.txtを参照)。
$writeback_file_extension = "wb";
コメントやTrackBackのデータを格納するファイルの拡張子の設定です。通常は変更する必要はありません。
@writeback_fields = qw(title name blog_name url comment excerpt);
writebackで使用するパラメータの設定です。通常は変更する必要はありません。
$writeback_block_invalid_header_cm = 0;
スパムと思しきコメントの投稿に対処するため、ヘッダをチェックするかどうかの設定です。値を1にすると、各エントリのコメント投稿用フォームのあるURL以外をリファラとして送信されたコメントは拒否されます。
$writeback_block_invalid_header_tb = 0;
スパムと思しきTrackBackの投稿に対処するため、ヘッダをチェックするかどうかの設定です。値を1にすると、リファラを送信してきた、またはUserAgent?名が「Mozilla/」で始まるクライアントからのTrackBackは拒否されます。
$writeback_block_ascii_only = 0;
スパムと思しきコメントまたはTrackBackの投稿に対処するため、コメントまたはTrackBackの本文がASCIIのみかどうかをチェックするかどうかの設定です。
$writeback_conv_charset = 0;
受信したTrackBackの文字コードを変換するかどうかの設定です。この設定を有効にしたい場合、サーバーにJcodeモジュール(jcode.plではありません)がインストールされている必要があります。
$writeack_charset = 'utf8';
受信したTrackBackの文字コードを変換する場合、変換後の文字コードの設定です。通常は変更の必要はありませんが、blosxom starter kitをUTF-8以外で利用する場合は、その文字コードに合わせて設定する必要があります。
$writeack_cookie_domain = ".example.com";
クッキーを割り当てるドメインのの設定です。blosxom starter kitを設置したドメインを指定してください。
$writeack_cookie_path = "/test/blosxom";
クッキーを割り当てるパスの設定です。blosxom starter kitを設置したパスを指定してください。
$writeack_cookie_expires = "+3M";
クッキーの有効期限の設定です。上記の例の場合、クッキーの有効期限は3ヶ月になります。通常は変更の必要はありませんが、変更する場合は以下の例を参考に、変更してください。
+30s : 30秒 +10m : 10分 +1h : 1時間 -1d : 昨日(即削除) now : 直後に +3M : 3ヶ月間 +10y : 10年間
$writeack_notify_mail = 1;
コメントやTrackBackを受信した場合、その内容を指定のメール・アドレス宛てにいくつかの補助的な情報と共に通知するかどうかの設定です。この設定を有効にしたい場合、サーバーにsendmailまたはsendmail互換のメール送信アプリケーション及びJcodeモジュール(jcode.plではありません)がインストールされている必要があります。
$writeack_sendmail = '/usr/local/bin/sendmail';
sendmailのパスの設定です。sendmailのパスがわからない場合は、サーバーの管理者に聞いてください。
$writeack_from = 'john-doe@example.com';
通知メールのFromヘッダに利用するメール・アドレスの設定です。sendmailの設定によっては特定のFromヘッダを持つメールしか送信できない場合もあるので、きちんと設定してください。
$writeack_to = 'john-doe@example.com';
通知メールのToヘッダに利用するメール・アドレス、すなわり通知メールの送信先の設定です。自分の通常使用するメール・アドレスを指定するべきです。
blosxomの一般的な動作についてはとても説明しきれませんので、設置設定する前に本家サイトまたはその日本語訳のサイトを閲覧することを強く推奨します。
質問その他に関しては出来うる限りお答えしますが、場合によっては無視するかもしれません。
Last-Modified: 2006-11-21T18:34:32+09:00