システム・ガイド

このガイドは、『カレンダーWeb予約システム』の機能・設置・カスタマイズについてご説明するものです。

− 目次 −
1. 機能について
システムの諸機能と簡単な使い方をご説明します。
(1) 機能概要
(2) 各プログラムの機能
(3) HTMLテンプレートの共通事項
2. 設置について
システムの設置作業には、動作確認も含めて約30分かかります。
あらかじめこのガイドをご一読頂きますと、スムーズに作業を進められます。
(1) はじめに
(2) セットアップするファイルの解凍
(3) サイト構成の確認
(a) ディレクトリ構成
(b) ディレクトリ・ファイル一覧
(4) CGIプログラム設置前の準備
(a) Perl のパスの確認
(b) 設定ファイルの格納場所の指定
(c) アクセス制限ディレクトリの確認
(5) CGIプログラムなどの設置
(6) 設置後の動作確認
3. カスタマイズについて
システムのカスタマイズについてご説明します。
(1) 設定ファイルの修正方法
(2) 設定ファイルの修正項目
(3) 保存ファイルの保守

1.
機能について ▲トップへ

(1)機能概要 ▲トップへ
このシステムでは、次のような機能をご提供します。
ホームページの利用者(訪問者)向けの機能
パソコンおよび携帯電話からのアクセスをサポート
カレンダーの表示
予約状況の表示
予約フォームの表示・受付
サンキューメールの送信

管理者向けの機能
予約情報の管理(表示・修正・削除・新規登録)
メール件名、本文の設定

(2)各プログラムの機能 ▲トップへ
各プログラムの機能について簡単にご説明します。
CGIプログラムは、1つのサーバー上のcgi/ および mng/ に格納されます(cgi/とmng/は並列関係のディレクトリ)。
No 格納ディレクトリ CGIプログラム名 機能
1 cgi/ calendar.cgi 指定された月数分のカレンダーを表示します。
パソコン、携帯の両方の表示に対応しています。
2 view.cgi 指定された日付の予約状況を表示します。
パソコン、携帯の両方の表示に対応しています。
3 reserve.cgi 予約フォームを表示し、予約を受付けます。
各種入力チェックおよび予約数のチェックを行います。
パソコン、携帯の両方の表示に対応しており、携帯電話表示では各入力欄に応じた文字種別を指定し入力しやすくなっています。
また、予約数は厳密にチェックしており、自分が予約フォームに入力途中の状態で、他のお客さまが先に予約を入れてしまった場合でも、指定された予約数を超えないようエラーメッセージを表示して予約人数の再調整を促します。
4 jcode.pl 日本語コード変換モジュール[ フリーソフト ]
5 mimew.pl MIME変換モジュール[ フリーソフト ]
6 mng/ index.html 管理者用ページのトップページ
7 com.pl 共通設定ファイル
8 jcode.pl 日本語コード変換モジュール[ フリーソフト ]
9 .htaccess 管理者用ページアクセス制限設定ファイル
10 .htpasswd 管理者用ページアクセス制限パスワードファイル
11 reserve_list.cgi 予約者一覧を表示します。
12 reserve_edit.cgi 予約者情報の詳細を表示したり、内容の修正を受付けます。
13 email_edit.cgi サンキューメールの件名・本文を設定します。
14 /data 各種データ格納用ディレクトリ

(3)HTMLテンプレートの共通事項 ▲トップへ
CGIプログラムは、HTMLテンプレート・ファイルと合成した内容を表示します。
HTMLテンプレート・ファイルは自由に変更可能ですが、次の点にご注意ください。
1) HTMLテンプレート内には「<!-- __CONTENTS__-->」という特定のコメントタグが埋め込まれています。
このコメントタグのある行に、CGIプログラムの出力結果を挿入した形で表示します。
HTMLテンプレート・ファイルを編集される際には、削除しないようご注意ください。
HTMLテンプレート・ファイルは以下の通りです。
No 格納ディレクトリ テンプレートファイル名 機能
1 cgi/ template_calendar.html [ HTMLテンプレート ] パソコン向けカレンダー表示用
2 template_view.html [ HTMLテンプレート ] パソコン向け予約状況表示用
3 template_reserve.html [ HTMLテンプレート ] パソコン向け予約フォーム表示用


2.
設置について ▲トップへ

(1)はじめに ▲トップへ
設置するサーバーは、次の条件・制約がある前提での設置作業となります。
1 OS UNIX
2 Perl のバージョン Perl 5,005以上
3 SSI -
4 FTP 使用可能
5 アクセス制限の方法 サーバーの基本認証を使用 ( .htaccess ファイルの設置 )
6 sendmail 使用可能
7 Javascript パソコン向け表示で使用

(2)セットアップするファイルの解凍 ▲トップへ
添付ファイルを解凍して下さい。
CD-ROM等で配布の場合はすでに解凍されております。

(3)サイト構成の確認 ▲トップへ
(a)ディレクトリ構成
設置の前に用意しておく必要があるディレクトリは以下の通りです。
ディレクトリ名に問題がありましたら、以降読み替えて頂きたくお願い致します。その場合、設定ファイル(com.pl)の変更も必要です。
No ディレクトリ名 説明
1 cgi/ 利用者用CGIプログラムを格納します。
2 mng/ 管理者用のページおよび管理者用CGIプログラムを格納します。
このディレクトリ内のコンテンツに対して管理者用のアクセス制限を行います。
アクセスのためのIDは「yoyaku」、パスワードは「yoyaku」に設定されています。
3 mng/data/ 各種データを格納します。

(b)ディレクトリ・ファイル一覧
本システムのディレクトリ、ファイルの一覧は次の通りです。
No ディレクトリ名 ファイル名 説明
1 (トップ) index.html パソコン向けのフレーム表示用HTMLです。
左フレームにカレンダー、右フレームに予約状況を表示します。
2 cgi/ 1.(2)をご覧ください。
3 mng/ 1.(2)をご覧ください。
4 mng/data reserve.dat 予約者データファイル
5 reserve_code.dat 予約者コードデータファイル
6 email.dat メール件名・文面データファイル

(4)CGIプログラム設置前の準備 ▲トップへ
(a)Perl のパスの確認
UNIX系でCGIプログラムを動作させる場合には、Perl のパスを正しく設定しなければなりません。
お送りしたCGIプログラムは、「/usr/bin/perl」として設定されています。
このパスと異なる場合、すべてのCGIプログラムに対してパスの再設定を行う必要があります。
お手数をお掛け致しますが、次の手順で設定してください。
なお、Perl のパスが分からない場合は、サーバー管理者にお問い合わせください。

Perl のパスの再設定手順
上記(2)で解凍した「top」フォルダーの中の「cgi」および「mng」内のすべてのCGIプログラムを、メモ帳などのテキストエディターで開き、1行目の記述を変更して、保存しなおしてください。
例) パスが「/usr/local/bin/perl」の場合
   #!/usr/bin/perl
       ↓
   #!/usr/local/bin/perl

注意:先頭の「#!」も忘れずに記述してください。また、「〜perl」の直後で改行してください(不要な文字を追加すると、正常に動作しない場合があります)。

(b)設定ファイルの格納場所の指定
「cgi」および「mng」フォルダーにある各CGIプログラムは、「/home/ox/virtual_html/yoyaku/mng/com.pl」いう共通の設定ファイルの内容を読み込むようになっています。
このガイドでは「cgi」と「mng」が並列関係にある前提ですが、互いの相対的な位置関係を変更される際には、設定ファイルの格納場所を修正する必要があります。
各CGIプログラムの上部には、「require」で始まる部分がありますので、そのアポストロフィの内部を修正します。
通常、指定する設定ファイルの位置は、相対パスでも絶対パスで指定しても構いません。
「cgi」および「mng」が並列関係でない場合には、「cgi」に格納されている全CGIプログラムの「require」文を、「/home/ox/virtual_html/yoyaku/mng/com.pl」を指し示すよう、次の手順で修正してください。
「/home/ox/virtual_html/yoyaku/mng/com.pl」の指定は、相対パス・絶対パスのいずれでも構いません(初期設定では相対パス指定となっています)。

設定ファイルの格納場所の再設定手順
例) 格納場所が「require '/home/ox/virtual_html/yoyaku/mng/com.pl';」に変更する場合
   require '../mng/com.pl';
       ↓
   require '/home/ox/virtual_html/yoyaku/mng/com.pl';

(c)アクセス制限ディレクトリの確認
「mng」フォルダーの中に、「htaccess.txt」というファイルがあります。これは、サーバーの基本認証によってアクセス制限を行うための特殊な設定ファイルで、アクセスするためのIDとパスワードの情報ファイル(.htpasswd というファイル)がどこにあるかを指定するものです。
あらかじめ、設置したサーバーのmng用には「/home/ox/virtual_html/yoyaku/mng/.htpasswd」と設定しています。

変更が必要な場合は、次の手順で変更してください。

アクセス制限ディレクトリの変更手順
「htaccess.txt」ファイルをメモ帳などのテキストエディターで開き、1行目にある絶対パスを修正します。
この絶対パスは、「/(スラッシュ)」で始まっており、アクセスするためのIDとパスワードの情報ファイルの場所を指定します。
ここでは、「mng」ディレクトリの直下にIDとパスワードの情報ファイルを置くようにします。
しかし、Webで公開しない別のディレクトリに格納する方がより安全性が高いため、格納場所を適宜変更して構いません。その場合には、指定した場所へ「.htpasswd」ファイルをきちんと格納するようにしてください。
「mng」ディレクトリが絶対パスでどのようになるかが分からない場合は、サーバー管理者にお問い合わせください。
例) 「/home/user/aaa/mng」に変更する場合
   AuthUserFile /home/ox/virtual_html/yoyaku/mng/.htpasswd
       ↓
   AuthUserFile /home/user/aaa/mng/.htpasswd

(5)CGIプログラムなどの設置 ▲トップへ
次の手順で、FTPにてサーバーへアップロードします。
現在のパソコン側の「top」ディレクトリ以下の構成と同じようにサーバー側も準備し、アップロードします。
No 項目 説明
1 ディレクトリの作成 FTPで接続して、「cgi」および「mng」ディレクトリを作成します。
さらに「mng」の下に新しいディレクトリ「data」を作成します。

各ディレクトリの属性は「755」に変更します(自動的に「755」になる場合はそのままにしてください)。
なお、「mng/data」ディレクトリ以下は、属性が「777」でないと情報を更新できない場合があります(サーバーの設定によります)。
なお、設置するサーバーによって別途指示されている場合はそれに従ってください。

以上で、パソコン側の「top」ディレクトリ以下と同じ構成のディレクトリを準備できました。
2 ファイルの転送 (1)ファイルの転送
上記2で作成した各ディレクトリに、パソコン側から対応する場所へファイルを転送します。
ファイル転送時には、ファイルの種類に応じて次の転送モードで転送してください。
各種情報ファイル「*.dat」
および画像ファイル
バイナリ−モード これらのファイルは「calendar.exe」には含まれていませんが、バックアップしてあったものを再アップロードする場合にはバイナリ−モードでアップロードしてください。
上記以外のファイル アスキーモード

(2)属性の変更
次のように、ファイルの種類に応じて属性を変更してください。
なお、設置するサーバーによって別途指示されている場合はそれに従ってください。
CGIプログラム「*.cgi」 属性を「700」もしくは「755」に変更
各種情報ファイル「*.dat」
および画像ファイル
属性を「666」に変更
これにより、CGIプログラムがこのデータを読み書きできるようになります。
上記以外のファイル 属性は「600」もしくは「644」に変更
サーバーによっては、自動的に属性が変更される場合もあります。その場合は、それに従ってください。
3 ファイル名の変更 「mng」ディレクトリにある、「htaccess.txt」というファイルを「.htaccess」というファイル名に変更します。
また、「htpasswd.txt」というファイルを「.htpasswd」というファイル名に変更します。
これにより、アクセス制限が行われます。
「.htaccess」ファイルで「.htpasswd」ファイルの格納場所を他へ変更された場合は、それに合わせてください。

(6)設置後の動作確認 ▲トップへ
次の手順で、動作の確認をします。
No 項目 説明
1 トップページの表示 ブラウザからアクセスし、正しくカレンダーが表示されることをご確認ください。
2 予約状況の表示 カレンダーの日付をクリックすると、右フレームに予約状況が表示されることをご確認ください。
3 予約フォームの表示 予約状況のリンクをクリックすると、別ウィンドウで予約フォームが表示されることをご確認ください。
4 予約の受付け 予約フォームへ入力し、予約が完了した後、予約フォームのウィンドウが閉じてカレンダーと予約状況が表示更新されることをご確認ください。また、サンキューメールが届くことをご確認ください。
5 管理者用トップページの表示

ブラウザから「...../mng/」へアクセスし、正しく管理者用のトップページが表示されることをご確認ください。
管理者用ページにはアクセス制限がかけられていますので、アクセスした際にIDとパスワードを入力するように求められます。入力を求められない場合には、設置に何らかの誤りがあると考えられます。
アクセスのためのIDは「yoyaku」、パスワードは「yoyaku」に設定されています。

※IDおよびパスワードの変更は「.htpasswd」ファイルを変更することで行えます。

6 管理者用各種メニューページの表示 管理者用トップページより、各種メニューのリンクをクリックし、対応する内容が表示されることをご確認ください。表示されたページには、トップページのメニューと同じ名称が表示されています。
また、各種設定内容が正しく登録されることもご確認ください。

以上で、設置および動作確認が完了です。
大変お疲れ様でした。

3.
カスタマイズについて ▲トップへ

(1)設定ファイルの修正方法 ▲トップへ
基本的な設定は「mng/com.pl」に定義されています。

このファイルを次の手順で修正することで、カスタマイズが可能です。
No 手順 説明
1 設定ファイルを開く Windowsのメモ帳などのテキストエディターで、「mng」フォルダーにある「com.pl」ファイルを開きます。
2 修正場所の確認 設定を修正できるのは、ファイルの先頭付近の「# 設定 ここから」という行から「# 設定 ここまで」の行までです。それ以外は、共通処理などの定義ですので修正しないでください。修正すると、処理が正常に動作しなくなる恐れがあります。

各修正項目は、各行が次のような書式で記述されています。
 「'キー名' => '値' , # ○○」

キー 設定する項目名です。半角英数字で記述します。半角のアポストロフィで囲まれています。
「 => 」 キーと値を結びつける記述です。半角文字「=>」の前後に半角スペースがあります。
設定する項目名に対応する値です。半角のアポストロフィで囲まれています。
, (カンマ) 行末には半角のカンマがあります。カンマの前には半角スペースがあります。
「# ○○」 コメントです。「#」以降は、その行の範囲内で自由にコメントを記述できます。
3 設定の修正 通常、「値」の部分の文字を修正します。
4 設定ファイルの保存 手順1で開いたファイルを上書きで保存します。
5 アップロード 修正したファイルをサーバーへアップロードします。

(2)設定ファイルの修正項目 ▲トップへ
次の項目を修正できます。修正の方法は、上記(1)をご覧ください。
No キー名・項目名 記述場所 説明
1 TITLE (1)共通設定
(16行目付近〜)
システムのタイトルです。表示時にはテンプレートHTMLに記述されたタイトルが表示されるため、基本的に表示されません。
2 DATA_DIR_NAME 情報格納用ディレクトリ名(パス名)です。絶対パスを推奨します。
初期値は「/home/ox/virtual_html/yoyaku/mng/data」です。
3 SENDMAIL_PATH sendmailのパスです。サーバー環境に応じて設定してください。
4 PERL_PATH perlのパスです。サーバー環境に応じて設定してください。
5 EMAIL_ADDR サンキューメール送信者のメールアドレスです。
6 EMAIL_ADDR_JP サンキューメール送信者のメールアドレスの日本語表記名です。受信した予約者のメーラーに日本語で送信者が表示されます。
7 RESERVE_SHUTOUT 予約締め切り日です。「○日前まで」予約を受付けるかを指定します。
8 RESERVE_MONTH_LIMIT 予約可能月数です。「○ヶ月先まで」カレンダーを表示するかを指定します。
9 URL_MNG_TOP 管理者用トップページURLです。相対ぱす、絶対パスいずれでも構いません。
10 (各種タグ) (2) 定数・配色など
(31行目付近〜)
各ページの文字色や背景色を指定します。
また、予約状況のページでは、「○」「△」「×」といった状況を表現する文字列や画像を指定できます。
11 (各種タグ) (3) テンプレートHTMLファイル名
(75行目付近〜)
パソコン向け表示の場合にCGIプログラムが読み込むHTMLテンプレートファイルの格納場所を相対パスまたは絶対パスで指定します。
12 (各種タグ) (4)データ構成
(81行目付近〜)
各データファイルの構成を指定します。
通常は変更しないでください。変更するとファイルの読み込みが正常に行えなくなる場合があります。
13 (各種タグ) (8)その他システム定数
(111行目付近〜)
システム固有の設定です。
通常は変更しないでください。
14 %OFF_DAY 曜日ごとの休日定義
(118行目付近〜)
曜日ごとに休日・営業日を指定できます。
15 $OFF_DAY2 祝日の休日定義
(130行目付近〜)
祝日(振替え休日含む)に対して、休日・営業日を指定できます。
16 %TZONE 時間帯(全曜日共通)の定義
(134行目付近〜)
開始時間と終了時間、最大予約受付け数を指定できます。
設定ファイルの説明にしたがって記述してください。
17 %KIMONO 着物の種類定義
(147行目付近〜)
予約フォームで選択する着物の種類を定義します。
既存の記述と同様にして、自由に追加・削除・修正できます。
18 %SEX 性別の定義
(156行目付近〜)
予約フォームで選択する性別の定義です。
19 %STATUS 状態の定義
(162行目付近〜)
管理者用ページの予約一覧で状態の定義です。
20 (各種タグ) 上記以外の設定
(171〜189行目付近)
各種設定です。
通常は変更しないでください。

(3)保存ファイルの保守 ▲トップへ
予約情報やメール件名・文面などの各種情報ファイルは「mng/data」ディレクトリに保存されています。
サーバーの故障などに備え、定期的にバックアップされることをお勧め致します。

バックアップと復旧の手順は次の通りです。
No バックアップ手順
1 FTPにてサーバーにアクセスする。
2 「mng/data」ディレクトリへ移動する。
3 「mng/data」ディレクトリにある全ファイルをバイナリ−モードでパソコンへダウンロードする。
パソコン側には、あらかじめダウンロードした日付のフォルダーなどを用意しておき、そこへ保存されると管理がしやすくなります。

No 復旧手順
1 パソコン上で、一番最近ダウンロードしたファイルのあるフォルダーへ移動する。
2 FTPにてサーバーにアクセスする。
3 「mng/data」ディレクトリへ移動する。
4 「mng/data」ディレクトリにある全ファイルをバイナリ−モードでパソコンへアップロードする。
一番最近ダウンロードした時点の状態に戻ります。最新のダウンロード後から今回のアップロードまでの間に変更された情報は含まれませんのでご注意ください。

▲トップへ戻る