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