概要とセットアップ
戻る
ファイル名: files104.tgz ソフトウェア名: Files ver.1.0.4(WEBファイル共有PHPスクリプト) 著作権者名: 株式会社 テクノワークス http://www.technoworks.co.jp 最終更新日: 2005/08/02 概要: このプログラムは、PHP4が使用可能なWEBサーバーで上で、ファイル共有機能を 提供するPHPスクリプトです。 特徴: WEBサーバーに共有フォルダを作成し、クライアントからブラウザを使用して ファイルのアップロードやダウンロードが行えます。 サーバーの共有フォルダの中には、複数階層のサブフォルダを作成することが でき、ファイルの削除、ファイルのコメント編集ができます。 カットバッファを使用して、ファイルの切り取り、コピー、貼り付け等の機能 を提供します。 利用者別の複数の共有フォルダを管理することができます。 各々の共有フォルダは、独立した先頭フォルダを持ち、互いのフォルダ間では 参照やファイルコピーなどは出来ません。ユーザー登録も別に行います。 FTPやSSH等が使用できない環境で、ファイルの受け渡しをする際に、メールに 添付したのではサイズが大き過ぎる、といった場合に使用することを想定して います。 ログイン時の認証には、MD5ハッシュを使用しています。 PHPのセッションIDと、パスワードのMD5ハッシュを組み合わせ、それをさらに MD5ハッシュ関数にかけるといった方法で暗号化しています。 動作環境: Linux + Apache + PHP4 の組み合わせでしか検証していません。 (PHP4が使用できるHTTPサーバーなら、使えるかもしれません) ログイン処理やページの切り替え処理にJavaScriptを使用しているため、 JavaScriptとが動作することがクライアントの条件になります。 動作検証は以下の環境で行っています。 サーバー: Red Hat Linux 8 + Apache 2.0.40 + php 4.2.2 Red Hat Linux 9 + Apache 2.0.40 + php 4.2.2 Fedora Core 1 + Apache 2.0.48 + php 4.3.4 Fedora Core 3 + Apache 2.0.52 + php 4.3.11 Vine Linux 2.6r4 + Apache 1.3.27 + php 4.2.3 クライアント: Windows98SE/2000Wkst/XPPro + InternetExplorer6, NetScape7.1 Red Hat Linux 9 + Mozilla 1.2.1 Fedora Core 1 + Mozilla 1.4.1 WindowsXP Pro/ Windows XP Home + Mozilla Firefox 1.0.3 準備: WEBサーバーでPHP4が使えるようにしておきます。 共有フォルダを作成する場所がWEBサーバーから書込みきるように設定されて いる必要があります。(HTTPサーバーのユーザーが書込み可能にしておく。) PHPではファイルをアップロードできるようにしておきます。 日本語の文字コード関係は、内部文字コードはEUCに設定されていると期待して 作成されています。 /etc/php.ini の設定項目の例 file_uploads = On --> 必須 upload_max_filesize = 10M --> アップロード最大ファイルサイズ post_max_size = 10M --> アップロード・ファイルサイズに影響 インストール: HTTPサーバーがアクセス可能で、PHPスクリプトが実行可能なディレクトリに アーカイヴを展開します。 filesXXX(XXXはバージョン番号)というディレクトリが作成され、その中に スクリプトファイルが展開されます。 ex: tar zxvf filesXXX.tgz (XXXはバージョン番号) ファイル構成:( filesXXX の XXX はバージョン番号) filesXXX/ スクリプト格納ディレクトリ README.txt このファイル confmenu.php 共有フォルダ設定メニュー cut.php ファイル/フォルダのカット及びコピー処理 delconf.php 作成済みの共有フォルダ削除処理 delete.php ファイル/フォルダの削除処理 dirlist.php 作成済みの共有フォルダ一覧画面 edit.php ファイル/フォルダの名称・コメント・属性編集 files.conf 管理用の設定ファイル files.php 共有フォルダ内のファイル/フォルダの一覧画面 files_com.php 共通サブルーチン・ファイル icon_img.php ファイルのアイコンイメージ定義ファイル ファイルのアイコンを追加する場合はこのファイルを編集 index.php 共有フォルダへの入り口用のページ (login.phpにジャンプする) login.php ログイン処理 md5hash.js クライアント用のMD5ハッシュ関数JavaScript mkdir.php 共有フォルダ内のフォルダ作成処理 modconf.php 作成済みの共有フォルダの設定更新処理 newconf.php 共有フォルダの新規作成処理 passwd 管理用のパスワードファイル passwd.php パスワード作成・変更処理 paste.php ファイル/フォルダのペースト処理 upload.cgi ファイルのアップロード処理(perlのcgi) (upload.phpが機能しない環境で使う) upload.php ファイルのアップロード処理 filesXXX/config/ 共有フォルダ設定の格納用ディレクトリ (設定で変更できます) filesXXX/data/ 共有フォルダ・データ格納用ディレクトリ (設定で変更できます) filesXXX/images/ イメージファイル格納ディレクトリ back.png 背景イメージ bmp.png ビットマップファイルのアイコン copy.png コピー・アイコン cut.png 切り取り・アイコン delete.png 削除・アイコン edit.png 編集・アイコン excel.png エクセルデータファイルのアイコン folder.png フォルダ・アイコン gif.png GIFイメージファイルのアイコン html.png HTMLファイルのアイコン lzh.png 圧縮ファイルのアイコン mail.png OutlookExpressデータ(.eml)ファイルのアイコン movie.png 動画ファイルのアイコン paste.png 貼り付け・アイコン pdf.png PDFファイルのアイコン sound.png MIDIファイルのアイコン text.png テキストファイルのアイコン title.png タイトル・イメージ(Technoworks) unknown.png 形式の不明なファイルのアイコン up.png 上位フォルダ・アイコン wav.png サウンドファイルのアイコン word.png ワード文書ファイルのアイコン wordpad.png ワードパッド文書ファイルのアイコン 初期設定: 展開したフォルダ内の files.conf が基本設定ファイルになっています。 設定ファイルは、キーワード設定値 のような構成で、1行で1つの項目を 設定するようになっています 初期設定のままでも使用できますが、CONFIG_TOP_URL は、利用するサーバーの 環境に合わせて、変更することをお勧めします。 この項目値は、ファイル一覧画面に表示されるリンクURLに使用されるので、 相対表記ではなく絶対表記にしておくと、リンクURLも正しく表記されます。 使い方: 展開した時の設定では、展開して出来たディレクトリ中のconfigディレクトリ に作成する共有フォルダの設定ディレクトリが作られるようになっています。 また、実際のデータを入れる共有フォルダも展開したディレクトリ直下のdata ディレクトリ以下に先頭フォルダが作成されます。 1)共有フォルダの作成: まず、http://サーバーアドレス/展開したURI/index.php にクライアントから ブラウザで接続します。 ログイン画面が表示されるので、ユーザーID: admin、パスワード:nimda で ログインします。 (デフォルトの管理者は admin パスワードは nimda に設定されています) ログインすると管理画面になるので、ここでパスワード設定を行います。 admin が特権ユーザーになっていますので、必ずパスワードを変更しておいて ください。 共有フォルダ一覧では、作成済みの共有フォルダの一覧が表示され、設定の 修正や、削除、共有フォルダの毎のログイン画面へのジャンプが行えます。 共有フォルダ作成では、新規に共有フォルダを作成します。 共有フォルダの設定名が設定ファイルの格納ディレクトリ名になります。 先頭フォルダには、実際に共有するフォルダの先頭ディレクトリを指定します。 先頭フォルダは、WEBサーバーがアクセス可能、書込み可能な場所に設定しな ければなりません。 先頭フォルダのURLは設定した先頭ディレクトリのURLを設定します。 その他は適当に設定してください。 共有フォルダを作成すると、展開したディレクトリのconfigの下に設定名と 同じ名前のディレクトリが作成され、その中に設定ファイルとパスワード・ ファイルが書き出されます。 設定ファイル名は、設定名.conf という形式のファイル名になります。 設定画面で編集できる内容は、設定ファイルのごく一部の項目だけです。 設定ファイルはエディタで編集可能なので、他の詳細項目はエディタで編集 します。 取り敢えずは上記の設定だけで使用できると思います。 共有フォルダを作成したら、共有フォルダ一覧画面を開きます。 共有フォルダ一覧画面の設定名かURLが、共有フォルダのログイン画面への リンクになっています。 2)共有フォルダの操作: 一覧画面から、作成したフォルダの名称、またはURLを選択します。 作成した共有フォルダへのログイン画面にジャンプするので、ここでも ユーザーID:admin 、パスワード:nimda でログインします。 (adminのパスワードはログイン後に変更してください) 共有フォルダの操作の基本になる、ファイル一覧の画面が表示されます。 この画面の上部に、「フォルダ作成」「アップロード」「パスワード設定」 の各機能へのリンクが表示されています。 「フォルダ作成」でサブフォルダを作成し、「アップロード」でクライアント からファイルをアップロードします。 作成したフォルダへの移動は、フォルダ名か行先頭のアイコンを選択します。 下位フォルダから上位フォルダへの移動は先頭行の上位フォルダの名前か矢印 アイコンを選択します。 アップロードしたファイルの名前が、一覧上にリンクとして表示されます。 ダウンロードする場合は、このリンクを選択してクライアントにダウンロード します。 コメントの編集や削除、複写、切取はファイル名の横のアイコンを選択します。 3)設定ファイルの編集: 設定ファイルの日本語文字コードはEUCで記述し、改行はLFのみを使用します。 設定項目は1行に1項目を記述し、 キーワード 設定値1 [設定値2] [設定値3] という形式になっています。 キーワードは行頭から開始し、値との区切りは必ず1つのTabで区切ります。 区切りに複数のTabを入れてはいけません。 キーワードの種類によって、設定値2、設定値3が無いものもあります。 行頭が # の行はコメント行です。 設定ファイルの項目については、設定ファイルの先頭にコメントで表記されて いますので、そちらを参照してください。 利用規定: ・使用条件 個人使用、非営利目的の使用に於いては無償で利用できます。 このソフトで直接利益を得るのでなければ、企業での利用も可です。 ・配布について 編集・改造を行っていない状態での再配布は自由です。 ・編集・改造について 編集・改造を行った本人が使用する場合に限り、自由です。 ただし、著作権情報に関する部分の編集は不許可とします。 編集・改造を行った物の再配布は、当社の許可を得ない限り行えません。 このソフトウェアのソースコードの全て、もしくは一部を他のソフトウェアに 無断で使用することはできません。 ・免責事項 このソフトウェアを使用したことで利用者が何らかの不利益を被ったとした としても、それに関して当社はいっさい関知いたしません。 自己責任でご使用ください。 ご意見・ご要望を記入していただけるように、掲示板を設置しました。 URL: http://www.technoworks.co.jp/forum/forum.php ・バグ・要望について バグや要望については、メールでお願いします。 ただし、バグ修正、要望の反映が保証される物ではありません。 著作権情報: このソフトウェアの著作権は(株)テクノワークス が保有します。 このソフトウェアは日本国著作権法および国際条約により保護されています。 利用規定の範囲内で使用することを許諾しますが、利用規定に違反して使用、 配布などを行うと、著作権の侵害となりますのでご注意ください。 連絡先: 株式会社 テクノワークス webmaster@technoworks.co.jp 更新履歴: Ver.1.0.0 2004/04/27 初版 Ver.1.0.1 2004/05/12 Tableのサイズ指定を固定サイズ(ピクセル)指定から相対サイズ (パーセント)指定に変更 ヘルプを追加 Ver.1.0.2 2004/05/18 files_com.php の get_post_get_val() を修正してバックスラッシュに よるエスケープに対処 Ver.1.0.3 2004/05/23 MacOS上のブラウザでMD5ハッシュ化の JavaScript が正しく動作しない為 設定ファイルにMD5の使用条件、MD5_PASSWD_USE を追加し、値として YES、NO、NO_MAC の3種類を設定できるように修正。 Ver.1.0.4 2005/08/02 ファイルのアイコン定義ファイルを別ファイルに切り出して、編集方法を コメントで付加。(アイコン追加の要望があったため) ヘルプにダウンロード方法の記述が無かったので、追加しました。 ファイル・アップロード時に上書きの確認をするように修正。 管理者のデフォルト・パスワードをブランクでなく設定ファイルで指定 されたものにするように修正。 デフォルトでは、以下の設定になっています。 管理者ユーザーID: admin 管理者パスワード: nimda