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の特長としては、次のようなことが挙げられる。 プログラムがテキストベースなので、作成や修正が簡単。 文字列を扱う機能が優れている。 プロバイダをはじめ、ほとんどのCGI環境がPerlを前提としていて 利用しやすい。 フリーソフトのため導入がしやすい。 ・通常のプログラムの場合 ソースプログラム → コンパイル → 実行プログラム → 実行 ・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 http://www.st.rim.or.jp/ Active State http://www.activestate.com/ KENT-WEB http://www.kent-web.com/ とほほのHTML入門 http://www.tohoho-web.com/ CGI-PLANT http://wws.cside.com/cgi-plant/