2.システムについて



2.3 ディレクトリーの構成


 子ども知恵図鑑のプログラムとデータは,大きく上の2つのディレクトリーに分けて格納する。PHPスクリプトはWebブラウザからのアクセスで機能するため,Webサーバーのドキュメント・ディレクトリー配下に置く必要がある。セキュリティの観点からは,このような場所にデータベース操作など重要な機能を持つスクリプトを置くのは好ましくない。そこで,重要な機能処理をメーンスクリプトから分離し,サブスクリプトとしてWebサーバーの配下にはない子ども知恵図鑑ディレクトリー下に置くことで,このようなセキュリティに配慮した構造とする。
 記事と写真の実データは,それぞれのディレクトリーにデータベースで自動採番されたユニークキー(id)をそれぞれ記事IDと写真IDとして格納する。それぞれのデータ・ディレクトリーは,"00"〜"99"までのサブディレクトリーを持ち,これら100個のサブディレクトリーは,さらに"00"〜"99"までの100個のサブディレクトリーを持つ。これらの10,000個のディレクトリーへの振り分けアルゴリズムは,まずIDを"10,000"で割り,その商の下2桁を上位100個のディレクトリー名とし,次にIDを"100"で割り,その商の下2桁を下位100個のディレクトリー名とする。このような方法で100IDずつ,順に別々のディレクトリーに格納することで,アクセス速度の向上を図る。IDが1,000,000を超えると,もとの00/00/の位置に戻り,データベースで付与できるIDの限界値(32ビットの整数)まで繰り返す。
 ロゴイメージは共通で使う各種ロゴは"ドキュメント・ルート/chie4/img/"の下に置く。ジャンルごとに使い分ける必要のあるロゴイメージは,その下にジャンルIDをつけたサブディレクトリーを設け,そこに格納する。



前のページへ 次のページへ