これは上級者向けの複数ディレクトリモードの説明文です.

CGIのURLはdisp.cgiです。
設置の説明は、Readme.htmlをご参照ください。


↓最初に読んでください(^^)/.
複数ディレクトリモードとは,ひとつのCGIを使い回して複数テーマの写真公開ページを作成できるモードの事です.やや上級者向けのモードなので,初めてWebAlbumをインストールされる方は,この文章を無視し,readmex.htmlのインストールガイドに従ってCGIをインストールして下さい.

〜以下の話は設置経験者限定〜〜〜
WebAlbum(一覧君CGI)は,設定を簡単にするために、全部のファイル(アイコンを除く)を一つのディレクトリに入れる単純なファイル配置構成を前提としています.この配置の場合、画像ファイルが入っているディレクトリにcgiや関連ファイルを放り込んで,パーミションの設定さえすれば,特に設定を書換えなくてもすぐ動きます.従ってCGI初心者でも設置が容易です.

しかしのCGIをしばらく使い,複数の公開ディレクトリを持つようになると,一覧君やアイコン画像を,新規公開テーマ毎に,画像ディレクトリに入れることが,面倒だと感じられるかもしれません.また,同じファイルやアイコンをダブって持つことになるので,WWWサーバの容量が無駄になっている気がする人もいることでしょう。

 そこで当CGIでは,単一CGIの使い回し可能な、複数ディレクトリモードを機能追加しました.このモードを使うと,従来よりもはるかに少ない手間で公開ディレクトリをどんどん追加できます

[インストール]

例えば温泉旅行に行ったとしましょう.仮にその写真が20枚あるとします.あなたは”温泉旅行”というテーマで,一緒に温泉に行ったメンバーに対して,写真公開をしたいという状況です.

まず,サーバのcgi実行可能なディレクトリ内に ファイルをFTPでアップロードして下さい. (以下の例では、仮にcgi-binという名前になっています。  この名前は何でも構いません) アイコンファイル以外のファイルはみんなcgi-binディレクトリに入れ, cgi-binディレクトリのパーミッションを705とし、 更に各ファイルのパーミションを()内の数値に指定します. アイコンファイルは、cgi-binディレクトリ内に アイコン用のサブディレクトリ 「icon」を作り* その中にアイコンファイルをアップロードしてください。 アイコンのアップロードが終わったら、iconディレクトリの パーミッションを701にしてください。  *名前は「icon」以外にしないで下さい

仮にcgi-binというディレクトリとする。
cgi-bin
 +index.html(当ファイル)
 +disp.cgi(705)
 +admin.cgi(705)
 +admin_lib.pl(705)
 +snl.cgi(705)
 +frame.cgi(705)
 +webalbum_lib.pl(705)
 +wconfig.txt(604)
 +imgsize.pl(705)
 +jcode_sj.pl(705)
 +message.txt(606)
 +icon(701)←ディレクトリ(ボタン用GIF等を入れ、各ボタン画像は(604)にする)
   
#ここまではシングルモードと同じ
ここで,onsenという名前のサブディレクトリをcgi-binの中に作って,そのパーミションを一時的に705にして下さい.で,その中に温泉の写真20枚を入れ,各画像のパーミションを(604)に指定します。これだけで onsen公開ディレクトリの準備は完了です.

呼び出す場合は,以下のようなアンカーで呼び出して下さい.

<A HREF=./disp.cgi?dir=onsen>温泉旅行</a> 温泉旅行
そうすると、「コメント保存用ファイル./onsen/message.txtが見つかりません.初回起動時であれば、disp.cgiでなく、ここにアクセスしてコメントファイル自動作成をしてください。」とグレイ背景のエラーメッセージが左上に出ていると思います。メッセージ指示に従って、青字のリンク部分をクリックし、テキスト保存用ファイル自動作成してください。(ここでは、できるだけ自動作成してください)なお、自動作成にどうしても失敗する場合は、手動でmessage.txtをonsenディレクトリにコピーして置いてください。

ここで、自動作成が終わったら、onsenディレクトリのパーミションを701に変更してください。そして後はWeb経由で「Edit comment」ボタンを押し、コメントを入れれば,もう公開可能です(^^)/.
ただし、本格公開する前には、一度ウィザードを起動して管理パスワードをデフォルト値から変更しておいてください。

また翌週にでも,別のダイビング仲間と海へ行き,写真を30枚ほど撮ったと仮定します.今度はこの仲間達に一連の写真を公開するとします.

すでにCGIは設置してあるので,CGIやアイコンのFTPアップロードは不要です.cgi-binディレクトリ中に,umiという名前のサブディレクトリを作成し,パーミションをまた一時的に705にして,その中に海の写真30枚を入れればひとまず準備完了です.

参考図(ファイルの配置関係)

これを今度は

で呼び出し、またeditモードに入って、コメントファイルmessage.txtを自動作成し 後でumiディレクトリのパーミションを701に変更するだけで公開可能です。
#呼び出すcgiからの相対パスをdirというパラメータで渡す仕組みです.?以降のパラメータ指定が含まれる場合,自動的に複数ディレクトリモードになります.また,アンカーだけでなく,URLからもパラメータを渡すことができます.

   メールで周知する場合は”http://XXX/XXX/disp.cgi?dir=umiを見てね!”という風に周知して下さい.

なお,message.txtは各サブディレクトリ内に作成されます。このファイルに戻り先やパラメータ設定などが書込まれます。従って、戻り先URLをそれぞれの公開テーマで別にしたい場合は各テーマの表示モードに入った状態で、ウィザードを起動し、URLを指定してください。

[うまく動かない場合]

  • message.txtの自動作成にどうしても失敗する場合は、手動でmessage.txtという名前の空ファイルをonsenディレクトリに置くか、message.txtをコピーして置くと解決します。
  • コメント書込み時にエラーが出てファイルに書込めない場合、message.txtのパーミッションを606に指定してください。

    (追加情報)
    β4以降では、左右分割フレームによるサムネイルの表示ができます。 この場合、最初か、サムネイルウィンド、メインウィンドを左右に分割した状態でユーザに見せたい場合は以下のアンカーに変更してください。
    なお、この場合、サムネイルフレーム上で、全画像が一気にロードされるため、あとの写真の切替え表示が非常に速くなります。ただし、最初に全部読み込むため、最初のブラウザの動きがかなり重くなります。

    <A HREF=./disp.cgi?dir=onsen>温泉旅行</a> ↓ <A HREF=./frame.cgi?dir=onsen&frame_width=90>温泉旅行</a>
    
        WWWサーバ上での,ファイルの配置構成    
    
     public_html(ホームページディレクトリ)
     |
     |-- cgi-bin(任意のディレクトリ)
       |
       |--onsen(705)(温泉 画像公開用ディレクトリ)
       |   |----message.txt(606)←自動作成される
       |   |----0001.JPG   (604)
       |   |----0002.JPG   (604)
       |   |      :
       |   |----00XX.JPG   (604)
       |
       |--umi (705)(海 画像公開用ディレクトリ)
       |   |----message.txt(606)←自動作成される
       |   |----0001.JPG   (604)
       |   |----0002.JPG   (604)
       |   |      :
       |   |----00XX.JPG   (604)
       |
       |-- jcode_sj.pl (705)
       |-- imgsize.pl  (705)
       |
       |-- disp.cgi     (705)
       |-- admin.cgi    (705)
       |-- admin_lib.pl (705)
       |-- webalbum_lib.pl(705)
       |-- wconfig.txt  (604)
       |-- snl.cgi      (705)
       |-- frame.cgi    (705)
       |-- index.html   (604)←なくても良い
       |
       |--icon (701)(icon用ディレクトリ)
         |-- next.gif     (604)
         |-- back.gif     (604)
         |-- exit.gif     (604)
         |-- top.gif      (604)
            ......(以下icon)