Perlを用いた 学内専用アップローダの作成

Perlを用いた
学内専用アップローダの作成
折田 宗一郎、樗木和彰
はじめに
近年ファイル交換が流行している。ファイル交換とは本来
提供する側が自分の作品などを他のユーザに公開し、受け取る
側は研究や勉強のために役に立ちそうなファイルを入手する。
というのが有るべき姿である。しかし、違法なファイルを無断
で公開し、それが当然のように流通しているのがファイル交換
をしているユーザ達の現状である。この研究では、ファイル交
換が学内限定で正しく行えるようなアップローダを作成した。
開発環境
アップローダを設置するにはCGIの設置が必要である。通常
CGIはプロバイダのサーバを利用する必要があるが、今回は動作
テストの簡易化や容量を気にしなくてもいいようにサーバから
設置することにした。
 OS:Windows XP
 サーバ:httpd142
和製HTTPサーバ。AN HTTP Server Home Page,
(http://www.st.rim.or.jp/)からダウンロードする。
 使用言語:CGI (ActivePerl5.8.4)
Windows環境で動作する。Active State,
(http://www.activestate.com/)からダウンロードする。
Perl(CGI)とは


Perlとは、CGIを実現するためのプログラミング言語の1つである。
初めはテキスト処理やファイル処理に重点を置いたものだったが、
徐々に機能拡張され、またボランティアによって、Windows や
Macintosh などのUNIX以外のプラットフォームにも移植されて、急速
に普及を遂げてきた。
Perlの特長としては、次のようなことが挙げられる。
 プログラムがテキストベースなので、作成や修正が簡単。
・通常のプログラムの場合
ソースプログラム → コンパイル → 実行プログラム → 実行
・Perl言語の場合
ソースプログラム → 実行



文字列を扱う機能が優れている。
プロバイダをはじめ、ほとんどのCGI環境がPerlを前提としていて
利用しやすい。
フリーソフトのため導入がしやすい。
アップローダCGIで使用するファイル
ホームページで使用するファイル
 index.html:HTMLファイル
 wwwupl:アップロードファイル格納フォルダ
 uploader:アップローダCGI
アップローダCGIで使用するファイル
 img Resize.pm:画像縮小モジュール
 cgi-lib.pl:perl汎用ライブラリ
 lockfile:ロックファイル
 jcode.pl:漢字コード変換ライブラリ
 uploader.css:スタイルシート
 uploader_ini.pl:設定ファイル
 uploader.cgi:cgiファイル
学内専用アップローダの概要
本研究で作成したアップ
ローダは、教員が講義で扱
うファイルを学生に配布す
る場合と、学生がレポート
を教員に提出する場合の2
つの状況で扱えるように
なっている。
教員用と学生用ではセキュ
リティの関係で、教員用は
ログインにパスワードが必
要になっている。
ホームページ:http://fitoida.ddo.jp/
図1 トップページ、メニュー
まとめ
アップローダを分け、それぞれに別々の規制をかけることで教
員と学生がそれぞれの立場で扱えるようなアップローダができ
た。サーバの設置は難なくできたが、アップローダを設置する
ためのCGIスクリプトが難しく、CGIを紹介しているサイトを幾
つか参考にさせて頂いた。今後はもう少しCGIを理解して、更に
利用し易いアップローダを作成したい。
[参考文献]
 AN HTTP Server Home Page
 Active State
 KENT-WEB
 とほほのHTML入門
 CGI-PLANT
http://www.st.rim.or.jp/
http://www.activestate.com/
http://www.kent-web.com/
http://www.tohoho-web.com/
http://wws.cside.com/cgi-plant/