Gumiki::Official Site
大小さまざまな規模のWebサイトをブラウザ上から容易に構築できるCMSシステム"Gumiki"の公式サイトです

管理者ガイド

 このセクションでは、edgumiki.cgi(編集管理)の解説および、実運用のために必要な設定について述べています。

この管理者ガイドは、ver1.14~1.15を想定して書かれています。他のバージョンでは若干なり内容が違いますので注意してください。

インデックス

バックヤード解説

 edgumiki.cgiは管理画面、あるいはバックヤード(裏庭)と呼んでいます。サイト管理およびページの作成&編集などはこちらで行うことになります。
 バックヤードは主に、最上位のページであるワールドトップ画面と、各レルム内の情報を扱うレルム管理画面がベースとなります。閲覧ページから管理画面に移動した場合はまずはレルム管理画面に遷移することになります。
 以下、レルムの概念については既に理解済みであるものとして、管理画面の解説を行っていきます。

【ワールドトップ画面】

 edgumiki.cgiを直で呼び出すか、レルム管理画面から[ワールドトップページに戻る]を押下することで表示される画面をワールドトップ画面と現在呼んでいます。このページの持つ機能は以下の通りです。

1. レルム一覧
1a. 個別のレルム管理画面に移動する
1b. 対象のレルムのトップページを閲覧する
2. レルム新規作成
3. 全体設定
4. ログデータ管理
4a. ログの取得
4b. ログの削除
4c. ログ解析管理
5. Zipアーカイブを取得する

1.レルム一覧

 作成済みのレルムについて、その管理画面に移動したり、レルムのトップページに移動します。なお、レルムのトップページは、レルム管理画面で設定しないと表示することはできません。

2.レルム新規作成

 新しいレルムを作成することができます。現在のGumikiでは一度作ったレルムは削除できませんので注意してください。
 なおver1.15にて、レルムの作成上限が30個と規定されました。

3.全体設定

デフォルトID
 gumiki.cgiを何のパラメータもなしに呼び出したときに最初に表示されるページを設定するためのものです。初期ではそれぞれ1が入っていると思います。必要時にこの値を変更してください。

管理者ホスト
 ここに記述したホスト情報は管理者ホスト情報として登録されます。このホストからのアクセスなどに際してはログを書き出さないようになるなど、分析用に用いるだけであって、認証管理などには使っていません。

コメント不可ホスト
 Gumikiではコメントフォームおよび掲示板フォームを設置できますが、ここに書いたホストアドレスのユーザは、コメント類の投稿が制限されるようになります。自動解除の仕組みはありませんので、使い方には注意してください。
 なお、ホスト(或いはIP)は部分一致でマッチングしています。

閲覧不可ホスト
 ここに加えたホストからのGumikiへのアクセスは問答無用で拒否します。閲覧不可にされた人は何の情報も見られなくなるため、こちらへの記述は慎重に行ってください。

4.ログデータ管理

 Gumikiでは以下のログデータを管理しています。

アクセスログあるクライアントからの任意のページへのアクセスに対してログを記録できます。採取したいページで#accesslog という行頭命令を記述する必要があります。また、検索ボックスを設置した場合、自動的に検索キーワードがこちらに記録されます。
カウンターログ任意のページに設置したアクセスカウンターのデータを保存しています。
逆リンクログ任意のページに逆リンク取得機能が設置できますが、その情報をこちらに記録しています。
CoolFeedログ任意のページに設置したCoolFeedのデータをこちらに記録しています。
コメントテーブルページに設置したユーザからのコメントデータをこちらに記録しています。
ダウンロードテーブル特定のURLへのアクセス数をダウンロード情報として記録することができます。
編集ログ管理ページの編集記録を残すことができます。この機能はデフォルトではオフになっています。

4a.ログの取得
 ログファイルへのリンクが張ってありますので、閲覧や保存ができます。但し、http上で直接物理ファイルへのアクセスができないようパーミッション設定をしている場合は管理者であろうとこちらからはアクセスできません。

4b.ログの削除
 common.cgiに削除固定PASSの設定があります。
 これを入力した上で緑色のボタンを押下することで、該当のログを全削除することができます。

4c.ログ解析管理
 Gumikiでは、これらのログデータに対する簡単な解析/管理機能を提供しています。

アクセスログ解析5回以上アクセスのあったホストを上位から並べているだけの簡易解析です。
カウンター解析カウンター情報を分かりやすく見ることができます。解析っぽいロジックは特にありません。
逆リンク解析リファラ別にアクセス数をまとめて表示しています。新しいアクセスは下に表示されます。Gumiki関係からのアクセスを表示しないような簡単なフィルタ機能も付けています。
CoolFeedログ解析CoolFeedに寄せられたコメントを表示するとともに、過去45日内での押下回数を表示します。
コメント一覧全コメント情報を一覧表示します。論理的にDELETEフラグを操作する機能も付いています。
ダウンロード管理特定のアドレスへのアクセスをDLコードとして紐付け、そこへのアクセスを記録することができます。その一覧および設定がこちらから可能です。

5.Zipアーカイブを取得する

 Gumikiで作成されたページおよび管理データ全てをZipにアーカイブします。
 添付ファイルなどは含まれません。
 ver1.15以降で対応しています。



【レルム管理画面】

 ワールドトップ画面よりも頻繁に操作することになるのがレルム編集(管理)画面です。一番上には「ワールドトップページに戻る」というリンクがあり、これを押すとワールドトップ画面に移動します。

1. ページ一覧
2. ページ新規作成
3. 添付ファイル管理
4. レルム情報更新

1.ページ一覧

 このレルムに属するページの一覧が表示されます。
 一覧から、ページの編集や閲覧を選択することができます。非公開コンテンツや、サービスの停止しているレルムのページは、この一覧の[閲覧]リンクからしか見ることができません。
 コメント機能のオンオフができます。初期設定はオフ(不可)になっています。オン(許可)に変えると、そのページの末尾にコメントフォームが自動的に付与されます。
 [ALL]というリンクを押下すると、コメント管理画面に移動します。コメント管理画面では、任意のコメントを削除することができます。

 なお、TopPage、Menu、Headerという名前のページが存在しない場合、このページを作るためのリンクが自動表示されます。但し、必ず作らなくてはいけないというわけではありません。

2.ページ新規作成

 新しくページを作る時はほとんどの場合、ここからページ名を入力して行います。既に存在するページ名を入力した場合、新規作成ではなくて編集画面に自動的に遷移します。
 ページ名には半角空白はできれば使わないようにしてください。一応ページとしては作れてしまうのですが、記法的に後々厄介なことになってしまいます。

3.添付ファイル管理

 レルム毎にファイルアップロード置き場が用意されています。こちらにアップロードしたファイルはレルム内のページから楽に呼び出したりすることができます。
 赤文字で注意書きがあるように、推奨は1つにつき128kb以内のファイルです。128~2048kbは受け付けますがファイルの内容を保証しません。また、ファイル名は半角英数字が基本です。日本語のような全角文字やスペース混じりがあると、正常にアップロードできない場合があります。
 アップロードするファイルにはコメントを付けて整理することができます。
 また、アップロードしたファイルはボタン1つで削除できます。

4.レルム情報更新

 レルム別設定の変更、更新ができます。

スタイル
 このレルム内のすべてのページに適用するスタイルシートを指定します。12種類のcssファイルが標準添付されており、プルダウンを選ぶことで変更することができます。
 それ以外のスタイルシートを使う場合は、ファイルの相対パスを入力してください。FTPで/cssの下にアップロードすることが想定されていますが、添付ファイルでアップロードしたアドレスを元にして指定してあげても一応機能します。
トップページ
 このレルムにおける最初のページ名を指定します。新しいレルムを作った場合は必ず指定してください。
レルムキャプション
 ブラウザのタイトルバーに表示される文字を設定できます。省略可であり、未入力のときはレルム名が用いられます。
サービス
 このレルムを「稼動」か「停止」か、選択できます。デフォルトでは稼動状態になっています。停止すると、閲覧画面でそのレルムは見られなくなります。
ロボットクロール
 ロボット検索によるページの巡回を許可するか認めないかを指定できます。
管理バー配置
 閲覧画面で右上に表示されていた[Home][レルム編集][ページ編集]の部分を管理バーと呼びます。このバーの位置を上か下か非表示かで選択できます。サイトの内容によってはリリース時非表示にしたほうが見栄えが良いですが、非表示だとページの更新もやや手間になります(いちいちedgumiki.cgiからアクセスしなければいけないため)

ページ作成/編集

 閲覧画面から「ページ編集」あるいはレルム管理画面から、ページの作成や編集を選ぶことで、ページ本文を入力する画面になります。幾度となく使うことになるでしょう。なお、本文領域ではタブキーが使えないように抑制しています。

カテゴリ
 ページのカテゴリ情報を記述します。カテゴリ単位での一覧を表示する際に利用しますが、現在はあまり有効な実装にはなっていません。カテゴリキーワードの指定ではなく、単に(画面には表示されない)一言メモの代わりとして使うのもアリです。
コンテンツ非公開
 デフォルトではチェックは外れている=公開の状態です。ここをチェックすることで、コンテンツを非公開扱いにすることができます。非公開コンテンツは外部の閲覧者は閲覧することはできなくなります。#recentといった最新更新ページ一覧のような表示からも外されます。下書き目的の時にたいへん有効です。
本文領域
 ページ本文の入力ができます。普通の文章およびHTMLタグ、それからGumiki記法と呼ばれる拡張タグ、行頭命令を記述できます。

 ページの入力が終わったら、[この情報でページを更新する]を押下してください。
 "TimeStampを変更しない"をチェックしておくと、更新時間の記録を行いません。#recentなどで更新ページ一覧に変更情報を気づかせたくない場合(たとえば微々たる修正など)などに用います。
 "保存→作業継続"ボタンを押すと、編集画面のまま一旦ページの保存を行います。あまり使わないかもしれませんが、テキストエディタ感覚で作業ができるように用意されたものです。

特別なページ

 ページ名は基本的には自由に付けてかまいませんが、以下に示す名前は特別な意味や機能を持ちます。大文字小文字も厳密に見ていますので注意してください

TopPage
 レルムにおける最初のページとして、TopPageという名前を使うことをGumikiでは推奨しています。しかし必ずしもこの名前でなくてはいけないというわけでもありません。
Menu
 この名前のページを作ると自動的にメニューページとして扱われます。もちろん然るべき位置に表示されるためにはスタイルを指定してあげる必要があります。
Header
 この名前のページを作るとヘッダー領域として自動的に読み込まれるようになります。
Footer
 この名前のページを作るとフッター領域として自動的に読み込まれるようになります。
Help
 この名前のページを作ると、管理バーにヘルプへのリンクが自動的に生成されます。サイト訪問者にヘルプを提供したい場合に活用します。

その他の管理


【ファイル設定項目】

 cgiファイル内にも色々な設定可能項目がありますので、一通り述べていきます。変更箇所についてはファイル内を検索して探してください。

common.cgi (ユーザ設定)

$REALM_NAME, $ADM_HOME_NAME, $ADM_REALM_NAME, $ADM_PAGE_NAME, $ADM_HELP_NAME
 管理バーなどで用いる用語のリソース情報です。
$DEFAULT_POSTER: コメントフォームのデフォルト投稿者名です。
$masterFolder: 管理マスタデータの保存フォルダ名です。デフォルトは"database"となっています。ここの値を変えた場合は該当するディレクトリの名前も手動で変更してください。
$saveEditLog: 編集ログを記録するかどうかの設定です。デフォルトではoffになっています。
$password: 非公開ページを見るためのキーでありシステムから自動的に使われます。なお、Gumikiでは非公開ページに対して第3者から絶対に見られないというようなセキュリティ性は保証していません。単に「普通の方法では見られない」というだけです。
$deletePassword: ログ削除やコメント物理削除に用いる照合キーです。
$adminAddress: 管理者のメールアドレスをここに設定します。
$rssFeed: RSS出力をする場合はon、しない場合はoffを設定してください。
$useGumikiAuth, $authType, $authPass1, $authPass2, $sessionTime:
 Gumiki認証用の設定項目です。デフォルトでは使わない設定になっています。

gumiki.cgi (閲覧cgi)

$switchKeyLog: 検索フォームを設置して、誰かがそこからサイトを検索した場合にアクセスログにこの検索情報を保存するかをon/offで指定できます。デフォルトではonになっています。

Authorize Security - 認証について

 セットアップガイドに示した手順だけでは、認証が全くかかっていないため、ページを誰でも閲覧、作成、編集、削除ができてしまいます。
 限定された人だけが編集あるいは閲覧できるようにするためには認証を有効にしなければいけません。
 Gumikiでは、Cookieを用いた独自の認証システム(Gumiki認証=Form認証)を提供しています。また、プロバイダが.htaccessの設置を許可している場合は、これを用いたBASIC認証を用いることができます。BASIC認証の方がセキュリティ的にはより安全なので、可能ならこちらを用い、導入ができない環境においてGumiki認証を用いると良いでしょう。

1.Gumiki認証

 Gumiki認証を利用するには common.cgi ファイルを編集する必要があります。デフォルトでは使用しない設定になっています。
### 以下は、.htaccessが使えない環境の人のための認証設定です。
$useGumikiAuth = 0;
$authType = 0;
$authPass1 = "pass1";
$authPass2 = "pass2";

 common.cgiに上記箇所があると思います。それぞれ以下の説明に従って値を設定すればGumiki認証を活用することができるようになります。

要素名意味用途
$useGumikiAuthGumiki認証を使うかどうか0:Gumiki認証を使わない
1:Gumiki認証を使う
$authType認証パターン0:閲覧はフルアクセス、編集系ページのみパスワード1での認証をかけます。
1:閲覧、編集ともにパスワード1での認証をかけます。
2:閲覧にパスワード1での認証を、編集にパスワード2での認証をかけます。
$authPass1認証パスワード1パスワード文字列は任意に設定してください。
$authPass2認証パスワード2パスワード文字列は任意に設定してください。

 以上を設定の上Gumikiにアクセスした場合、Gumikiシステムは必要に応じて、クライアントのCookieを読み取ります。Cookieがまだ作られていなかった場合、認証のためのパスワード入力画面を表示します。
 なお、クライアントユーザがブラウザ設定やツールで、Cookieを拒否する設定にしていた場合、常にログインは失敗します。

 Cookieはセッション管理用として用いており、入力したパスワードそのものが保存されているわけではありませんので、セキュリティ的にも決して低いものではありません。

Gumiki認証の問題点
 ただし、Gumiki認証はあくまでもシステム制御のcgiに認証機構を導入するだけです。Basic認証にあるような、フォルダ単位の認証は対応できません。そのため、物理ファイルの在り処が知られている場合、直にアドレスを叩かれた場合に中身が見られてしまうことになります。これを防ぐために、データファイルのパーミッションは一段厳しくする必要があります。

2.BASIC認証

 Gumikiでは、.htaccess を用いた以下の3つのBASIC認証ケースを基本想定としています。

A. edgumiki.cgi に認証をかける。その結果、閲覧は自由だが編集は認証された人しかできない。(標準サイト)
B. フォルダ全体に認証をかける。その結果、限られた人だけが閲覧および編集ができる。(クローズドサイト)
C. フォルダ全体に認証をかけつつ、edgumiki.cgi にさらに認証をかける。限られた人が閲覧できるものの、編集はさらに管理者しか行えない。

 ここでは、最も基本的なケースである A. のやり方のみ紹介します。
 .htaccess.htpasswd という2つのテキストファイルを作成することになります。

.htaccess ファイル
<Files edgumiki.cgi>
AuthUserFile /(絶対パスでファイルの置き場を記述)/.htpasswd
AuthGroupFile /dev/null
AuthName "管理者だけがページの作成、編集ができます"
AuthType Basic
require valid-user
</Files>

<Files .htaccess>
order deny,allow
deny from all
</Files>
 こういう内容のファイルを、gumiki.cgiと同じフォルダ上に作ってください。AuthUserFileの部分は、最終的にサーバに配置される絶対アドレスを記述します。サーバへのアップロードはFTPソフトを使うことになると思いますが、そのFTPソフトには絶対アドレスが表示されると思いますのでそちらを参考にしてください。

.htpasswd ファイル
 認証はIDとPasswordの組からなりますが、この認証情報ファイルを作らなくてはいけません。.htaccessの解説も含めて、こちらの外部サイトが参考になるでしょう→http://www.futomi.com/lecture/htaccess/htpasswd.html
 ページの真ん中から下のあたりに、パスワードを入力できる欄があるので、そちらを使ってパスワードを暗号化します。たとえばあなたが、ID=test PASS=testdesu という認証の組を用意するとしましょう。入力ボックスにtestdesu と入れると、
パスワード testdesu 
暗号化パスワード uu0En9XQDrrdw 
 このように表示されます(暗号化パスワードは毎回変わります)。これを元に、以下のような.htpasswdファイルを作ります。
test:uu0En9XQDrrdw
 こうしてできた2つのファイルを、サーバ上のcgiと同じフォルダに配置します。パーミッションは644あたりを設定しておいてください。
 そしていざ、サーバ上のedgumiki.cgi、つまりページの編集やレルム管理にアクセスしようとするとBASIC認証画面が出るはずです。そして、先ほどのIDとPASSの組を入力して、無事に編集画面画面が見られたでしょうか。
 BASIC認証のダイアログが表示されない場合は、記述にミスがあるか、あるいはプロバイダが.htaccess の記述を認めていない可能性があります。これについては各人調べてください。

 なお、このBASIC認証について、もう少し細かく述べたものを認証設定ガイドとして提供していますので、併せてお読みください。


TopPage