研究紀要第131号 「情報ネットワークの教育的活用に関する研究」 -051/074page
要があるため,専門的な知識と技能が必要となる。そこで,一連のコマンド入力をまとめて実行させることのできるシェルスクリプト(shell script)に着目し,Webサーバを構築するアプリケーションApacheの設定ファイルを自動的に設定済みのファイルに置換できないかと考えた。
2 開発環境・技術
開発の基本方針に従い,以下のような開発環境・手法のもとに設計・開発を行った。
機材 DOS/V機 CPU:Pentium166MHz Memory:64MB HD:2.4GB 1997年3月製造 OS Vine Linux2.0 手法 シェルスクリプト ※ 参考
・Vine Linux について
Linuxのディストリビューション(Linuxのカーネル(OS本体)とウィンドウシステム(Windowsのようなマウスで操作できるGUI環境を構築できる)等のアプリケーションをひとまとめにした配布パッケージ)の一つ。世界的に広く普及しているRedhatLinuxディストリビューションをベースに,インストール直後から快適な日本語環境を実現できるように開発されている。ヘルプ等が日本語化されているので,初心者でも理解しやすい。また,Linuxとしての基本的な機能はすべて備えているので,サーバ用途などの高度な要求にも対応することができる。
・シェルスクリプトについて
UNIXのシェル(入力されたコマンドを翻訳してOSに渡すコマンドインタプリタ:命令翻訳者)に一連の処理を指示し,一括で実行させることができる。MS−DOSのバッチ処理とほぼ同じもの。
3 研究の実際
1 0Sのインストール
準備したDOS/V機にVine Linux2.0をインストールした。その際にオプションとして,Webサーバアプリケーション(Apache)を選択した。これにより,起動直後からWebサーバとして動作する。
2 シェルスクリプトの作成
Webサーバをインストールしても,初期設定のままではCGIを動作させることはできない。以下の設定ファイルにCGI動作に関する記述を書き加える必要がある。
Vine Linux2.0(デフォルト)の場合 /etc/httpd/conf/ディレクトリ内の httpd.conf・・・サーバの基本動作 access.conf・・・アクセス制御 srm.conf・・・提供する情報の詳細を制御 そこで,CGIに関する記述を書き加えた設定済ファイルを既存のファイルに上書きするコマンドをシェルスクリプトにまとめた。また,手順を簡素化するため,設定済みのhttpd.conf,access.conf,srm.confを1つのファイルに圧縮した。これにより,シェルスクリプトファイル(拡張子.sh)と圧縮された設定ファイルの2つをサーバにアップロードし,シェルスクリプトを実行させるだけで,サーバの設定を完了できるようにした。
CGI動作設定シェルスクリプト apache_conf.sh #!/bin/csh →Cシェルを用いることを宣言 mkbir apache_conf_bank →既存の設定ファイルをバックアップするディレクトリを作成 set httpd_conf=‘find/-name”httpd.conf”-print‘ →httpd.confの場所を検索 cp $httpd_conf./apache_conf_bak/httpd.conf.bak →検索されたhttpd.confを作成したバックアップ用ディレクトリにコピー set access_conf=‘find/-name”access.conf”-print‘ cp $access_conf ./apache_conf_bak/access.conf.bak →access.confを検索,コピー set srm_conf=‘find/-name”srm.conf”-print‘ cp $srm_conf/apache_conf_bak/srm.conf.bak →圧縮しておいた設定済みファイルを解凍 mv -f./apache_conf/httpd.conf $httpd_conf mv -f./apache_conf/access.conf $sccess_conf mv -f./apache_conf/srm.conf $srm_conf →解凍された設定ファイルをそれぞれ既存のファイルに上書き set httpd_pid=‘find/-name”httpd.pid”-print‘ kill -HUP‘cat $httpd_pid‘ →設定を反映させるため,Apacheを再起動