Insert File Manager v2.x 設置解説
機能・特徴 ダウンロード 設置解説

この設置解説を読んまずにサポートBBSに質問しないでください。


■ InsertFileManager v2 の設置手順 TOP
一般的な設置イメージの例です
 public_html (ホームディレクトリ等)
 insert (705,755,777) インサートファイルディレクトリ
 ifm (CGIを置く任意のディレクトリ)
   ifm.cgi    (700,705,755)A   メインプログラム
   jcode.pl     (644)A   日本語ライブラリ
   ifm.css   (644)A  CSSファイル
   first_lib.cgi   (644)A   ライブラリ
   database_lib.cgi   (644)A   ライブラリ
   insert_lib.cgi   (644)A   ライブラリ
   pagectrl_lib.cgi   (644)A   ライブラリ
   manual_lib.cgi   (644)A   ライブラリ
   bg.gif   (644)B   画像
   mbg.jpg   (644)B   画像
   hatena.jpg   (644)B   画像
   data         (705,755,777)A   データディレクトリ
     category.cgi    (600,606,666)A   データファイル
     group.cgi    (600,606,666)A   データファイル
     filelist.cgi    (600,606,666)A   データファイル
     database0.cgi    (600,606,666)A   データファイル
     database1.cgi    (600,606,666)A   データファイル
     database2.cgi    (600,606,666)A   データファイル
     database3.cgi    (600,606,666)A   データファイル
     database4.cgi    (600,606,666)A   データファイル
     database5.cgi    (600,606,666)A   データファイル
     database6.cgi    (600,606,666)A   データファイル
     database7.cgi    (600,606,666)A   データファイル
     database8.cgi    (600,606,666)A   データファイル
     database9.cgi    (600,606,666)A   データファイル

 ifmディレクト内のifm.cgiは実行可能、それ以外はすべて読み取り専用
 dataディレクトリ内のファイルは全て読み書き可能
 です。


( )内は パーミッション値です。
A は ASCII(アスキー)、 Bは Binary(バイナリー) でFTP転送してください。

■ 設置準備と設置 TOP

■ 設置準備
  1. ifm.cgi をテキストエディタなどで開き次の設定をします。

以上でCGI内部の設置前設定は終りです。
通常設置イメージどおりなら 設定1と2あたりをサーバーにあわせれば終わりです。
(注)について
URLの記入の仕方はイコール(=)の右辺のシングルクォーテーション内にURLを書き込みます。
シングルクォーテーションを省いたり、行末のセミコロン(;)を削除したりしないで下さい。
例:$thisCGI = 'http://artemis-cgi.com/ver2000/cgi-bin/manager.cgi';

■ 設置
  1. 設置イメージ通りに必要なファイルを転送します。
  2. 設置イメージ通りに必要なディレクトリを作ります。
  3. 全ファイル・ディレクトリについてパーミッションを設定・確認します。
    補足:ファイルとパーミッション設定↓
初心者はなるべく全ファイルを転送し、全ディレクトリを作っておく事。

■ 基本動作テスト TOP
■ 基本動作テスト
  1. STEP1 ブラウザで設置したifm.cgiにアクセスします。

  2. STEP2 データベースファイル管理 テスト
  3. STEP3 インサートファイル管理 テスト
  4. STEP4 掲載広告コントロール テスト
これでCGI自体の基本動作テストは終りです。
この他にも、暇があれば次のテストをしておいてください。

あとはPHP記述、SSI記述方法をよく読んでHTMLファイルにインクルードの記述をします

■ 基本動作 エラーFAQ

■ PHPの下準備 TOP
自分のサーバーで既にPHPを使った事のある人は次の読み込むための記述の方に進んでください。

■ここでは初めてPHPに触れる人向けに簡単に説明だけしておきます。
まず契約してるサーバーのインフォメーションやヘルプ、マニュアルで
PHPに関する情報を探してください。

◆サーバーのモヂュールとして動作する場合
『PHPファイルの拡張子は.phpです』と言うようなアナウンスだけある場合や
『モヂュールとして動作します』と言うアナウンスがある場合は
大抵、PHPを記述するHTMLファイルの拡張子を .phpに変更するだけで
HTMLソース内に記述するPHPの命令を動作させる事ができます。

◆PHPがCGIとして動作する場合
『PHPはCGIとして動作します』という表現がされている場合
この場合はPHPのpathと拡張子がアナウンスされているはずです。
例えば
パス:usr/local/bin/php
拡張子:cgi または php

この場合はPHPを記述するHTMLファイルの拡張子を指定された拡張子に変更し
ファイルの冒頭に
#!/usr/local/bin/php
と言う1行を書込む事でCGIとして動作させる事ができます。
.htaccessなどで自分で追記する必要がある時は
AddHandler cgi-script .cgi(指定された拡張子)
多分この1行を追加する事で使えると思います。

※この手の動作に関する問題点などは大抵FAQやマニュアルに載せているはずです。
契約サーバーの利用方法解説ページなどを良く探してみてください。



■ PHPでインサートファイルを読み込む TOP
■インサートファイルを読み込ませる記述

◆ミスの少ない基本的な記述方法
広告でもヘッダーでもフッターでも、それを表示させる場所に
<?php
@readfile("http://・・・・・・/insert/インサートファイル名");
?>
と書込んでください。
多分これが最もミスが少ない方法だと思います。
一般的には相対パスで
<?php
@readfile("相対パス+ファイル名");
?>
の様に書きます。相対パスで迷わないような構成なら相対パスで書込んでください。 includeでもOKですが、インサートファイルを読み込むだけなのでreadfileで十分です
さて、この時の相対パスですが、これを書込むファイルから見たインサートファイルの場所です。
インサートファイルと同階層別ディレクトリにあるファイルなら'../insert/ファイル名'です。
どうしても相対パスが理解できない、わからない と言う場合はフルURLの方法にしてください。

テストの段階では
<?php
readfile("相対パス+ファイル名");
?>
の様に@をはずす事でエラーが出ているかページ上で確認できます。
通常は@をつけて置く事で、インサートファイルが見つからなくても
PHPのエラーメッセージが出力されないようにしておきましょう。

ファイル名の部分ですが、これはそのページが読み込むインサートファイルの名前です。
インサートファイル名はこのページから呼び出されている事がわかるような名前にしておく事で、
あとでifm.cgiで管理する時に直感的にわかりやすくなります。
例えばうちの場合は、Cv2_index, Cv2_download, 等とする事で Type-Cv2のどのページかと言う事など
インサートファイル名ですぐわかります。本人だけ理解できればいいですから。
同一ページ内に複数のインサートファイル読み込みを使う場合は
TOP、MID、BTM などの様なポジション毎にファイル名を分けていくといいでしょう。
Cv2_index_top,Cv2_index_btm, の様にカテゴリ_ファイル名_ポジションといった具合で名前をつけると
ほとんど直感的に自分では理解できるのではないでしょうか。
特にindexの様な全てのディレクトリで使ってしまうような名前の場合、分類用の接頭語をつけておかないと
あとでさっぱりわからなくなってしまいますので要注意です。
自分なりの分類法でうまくファイル名を名づけてください。

このv2からはコメント機能などもありますが、ファイル名はわかりやすく整理した方が楽です。

◆ページ内で複数箇所でインサートファイルを呼び出す場合 はもう少し工夫しましょう
安全確実な方法もいいのですが、さらに整理して記述する事で後々の管理を楽にします。
ページ冒頭に
<?php
$ins_head = '相対パス+ヘッダー'; ?>
の様にファイル冒頭にインサートファイルまでの相対パスやフルURLと
このページで読み込むインサートファイル名の共通部分までを入れておきます。

あとは読み込ませたい場所に
<?php
$ADfile = $header . 'top';
@readfile($ADfile);
?>
この様に共通部分の後につけるポジション識別子をつけてreadfileします。
こうする事で、のちのちファイル名を全部変える時やディレクトリ変更する時など
変更すべき要素は全て冒頭にあるので、書き換える手間がスクロール要らずで楽になります。
大量のページを抱えている人はなるべく最初の時点で整理して簡略化しておきましょう。



◆同じ場所の広告をランダム表示させたい場合
一箇所の表示に対するインサートファイルを複数個作ります。
そして、どれを読み込むかをランダムで決める方法で行います。
この例は4個の広告ファイルをランダムでピックアップする方法です。

<?php
$path='相対パス';
$indx = rand(0,3);
$flist[0] = 'インサートファイル名1';
$flist[1] = 'インサートファイル名2';
$flist[2] = 'インサートファイル名3';
$flist[3] = 'インサートファイル名4';

$ADfile = $path . $flist[$indx];
@readfile($ADfile);
?>

ランダムで欲しい数字が4個なので 0〜3までの数字と言う事になります。
欲しい数に対して-1の数を青文字の3のところに設定してください。
ファイルリスト $flist[x]に関しては上で設定した数字と同じ数まで
ファイル名をリストアップして書き出しておきます。

これでランダムに表示させる事が可能になります。
ランダムを中止・休止させたい場合は、この記述を修正して
通常に戻すのもOKですが、上の例では4個のファイルの中身を同じ広告にしてしまえば
結果的にランダムをやめたのと同じ事になります。
また2個ずつ同じものにすれば1/2ランダムと言う事になります。
どこで調整するかはあなたの管理の方法しだいで決めてください。

■ SSIの下準備 TOP
SSIがわかってる人はSSIで読み込むための記述の方へ進んでください。

■SSIが使えるかどうかはプロバイダー、契約サーバーなどでアナウンスされています。
無制限にOKの所よりは多少の制限があるところが多いようです。
exec cmd は使いませんので include Fileが使えればそれでOKです。

なお通常使えるサーバーでも.htaccessで追記が必要な所も多いようです。

Options FollowSymLinks ExecCGI Includes
AddType text/html .shtml
AddHandler server-parsed .shtml

この程度の追記でOKでしょう。
.shtmlはSSIを有効にする拡張子の登録です。
これをhtmlにしてもいいのですが、できればSSIを使うファイルはshtml と言う風に分けましょう


■ SSIでインサートファイル読み取り TOP
■基本的なファイルの読み込ませ方 include

<!--#config errmsg="" -->
<!--#include file="相対パス+ファイル名" -->

または
<!--#config errmsg="" -->
<!--#include virtual="最上層からのインサートファイルのパス+ファイル名" -->

1つ目の相対パスとはSSIを書込むファイルからみた、読み込むインサートファイルまでのパスです。
2つ目の最上層からのパスとは httpから始まるフルURLの内「http://サーバー名」 までを省いたものです。
例えば insertディレクトリが 「 http://artemis-cgi.com/insert/ 」だとすると
virtualで指定する場合は /insert/ となります。

ファイル名の部分ですが、これはそのページが読み込むインサートファイルの名前です。
インサートファイル名はこのページから呼び出されている事がわかるような名前にしておく事で、
あとでifm.cgiで管理する時に直感的にわかりやすくなります。
例えばうちの場合は、Cv2_index, Cv2_download, 等とする事で Type-Cv2のどのページかと言う事など
インサートファイル名ですぐわかります。本人だけ理解できればいいですから。
同一ページ内に複数のインサートファイル読み込みを使う場合は
TOP、MID、BTM などの様なポジション毎にファイル名を分けていくといいでしょう。
Cv2_index_top,Cv2_index_btm, の様にカテゴリ_ファイル名_ポジションといった具合で名前をつけると
ほとんど直感的に自分では理解できるのではないでしょうか。
特にindexの様な全てのディレクトリで使ってしまうような名前の場合、分類用の接頭語をつけておかないと
あとでさっぱりわからなくなってしまいますので要注意です。
自分なりの分類法でうまくファイル名を名づけてください。

<!--#config errmsg="" -->
の部分は本来エラーがあった場合にSSIからのエラーメッセージではなく、
こちらの意図的なエラーメッセージを出力するものですが、
""で空白にする事で読み取りエラーが起きてもエラーメッセージを表示させないようにする為に使っています。



■ データベース登録のコツ TOP
■改行と『特殊データ』について
このv2ではデータ入力フォームの改行について考え方が変わっています。
元v1ユーザーは気をつけてください。

■改行について
データベース管理で使っているテキストエリアフォームからの登録は
記入者が折り返した場所も無視して一切改行されません。
従ってページに表示される際に意図的に改行させたい場所がある場合は
そこに<br>を入れてください。

■特殊データ
特殊データについては設置後InserFileManagerのメニューの
使用説明書で説明してあります。


■ インサートファイル内に書込むURLなどについて TOP
■インサートファイル内に書込まれるURL
つまりはデータベースに登録するデータが含んでいるURLソース部分に関して。

読み込まれるデータは、それを読み込んだHTMLファイルの一部としてHTMLソースで出力されます。
従って画像タグやアンカータグの様に SRCやHREFでURLを指定するタグを書込む場合は
必ずhttp://から始まるフルURLで書込んでください。
サーバー内の相対パスで書込んでしまうと、読み込むファイルの階層によって相対位置がずれて
表示されないトラブルが起きます。

通常アフィリエイトで使用する広告会社から拾ってくるソースは
画像も含め全てフルURLで書かれてるケースがほとんどなので問題はおきにくいですが
画像を自分のサーバーに置いて自作リンクをしてあげる場合や
広告ではなく自分のTOPページへのリンクをインサートファイルで行おうとする場合など
そのURLの指定の仕方に気をつけてください。


■ パスワードを忘れた場合 TOP
管理用パスワードを忘れた場合はdataディレクトリ内のpwd.cgiと言うファイルを
削除してください。削除後にCGIを呼出すと初期パスワード設定画面になりますので
パスワードを設定します。


■ 初期化 TOP
CGIを初期化するにはinsertディレクトリとdataディレクトリの中身を
全て初期設置のときのファイルに交換すれば設置状態に戻ります。



■ Type-Gv1からのバージョンアップ TOP
このInsertFileManagerはType-Gv1のバージョンアップ版です。
互換性とデータなどの引継ぎなら柄の設置方法を書いておきます。

◆Type-Gv1からのバージョンアップ
インサートファイルはv1とまったく同じと考えてください。
そのままv1インサートファイルディレクトリを利用できます。
インサートファイルはHTMLファイルから呼び出されるファイルですから
移動させてしまうとHTMLファイルの方の呼び出し記述(SSIやPHP)を変更する必要が発生します。
従ってできるだけ同じ場所に置いたまま設置する事で余計な手間を省けます。

インサートファイルディレクトリを移動させない場合はHTMLファイル内の
PHPやSSIの記述はそのまま継続して利用できます。

またデータファイルもインポートする事で継続利用できます。

これらを踏まえて
インサートファイルのディレクトリ(デフォルトではinsert)はそのまま利用
HTMLファイルの記述もそのまま
データファイル(デフォルトではdatabase.cgi)もインポートが終わるまでそのままサーバーに置いておく
この3点を守れば簡単にバージョンアップできます。
設置後は、InsertFileManagerでデータのインポートなどを行う必要があります。

インサートファイルはボタンひとつでディレクトリ調査を開始して自動でリストアップされます。
データファイルはインポート画面でデータベースファイル(通常はdatabase.cgi)を指定する事で
これもそのままデータをインポートできます。
この様にインサートファイルをそのまま引き継ぐ場合は、インサートファイルの中身もそのまま引き継がれます。


◆Insert Sorc Manager との互換
このInsertFileManagerをSSIやPHPの使えないサーバ用に改造したものがInsertSourceManagerです。
なので、データやリストなどの記録物は全て互換があります。

サーバー変更などでIFM<->ISMの変更をする場合は
プログラムファイル ifm.cgi <-> ism.cgi の交換
ライブラリ xxxx_lib.cgi の全交換
データファイル内のfilelist.cgiを白紙(0バイトの空ファイル)にする
この3点でプログラム変更が可能です。

設置後は、InsertFileManagerでデータのインポートなどを行う必要があります。

インサートファイルはボタンひとつでディレクトリ調査を開始して自動でリストアップされます。
データファイルはインポート画面でデータベースファイル(通常はdatabase.cgi)を指定する事で
これもそのままデータをインポートできます。
この様にインサートファイルをそのまま引き継ぐ場合は、インサートファイルの中身もそのまま引き継がれます。



■ サポート TOP
サポートや不具合などについてはサポート掲示板で受け付けています。
自分のわかる範囲でできるだけ問題点を詳しく書いてください。
このマニュアルを読んでも、ある程度試行錯誤しても駄目な場合は
サポート掲示板に書込んでください。

どうしても使いづらい点などがあれば
報告として書いていただけたらと思います。

Copyright ©1998-2006 ARTEMIS. All Rights Reseved.