WWWサーバを立ち上げる


WWWサーバとは

Web という仕組みにおけるサーバプログラムは「Webサーバ」「WWWサーバ」 「HTTPサーバ」などと呼ばれます。通常、これらのプログラムは HTTP と いうプロトコルによるやり取りを提供するものです。HTTP とは Hyper Text Transfer Protocol の略で、文字通りハイパーテキストを転 送するためのプロトコルです。WWWサーバの仕事は、基本的にはクライア ントから要求された情報(ハイパーテキストなど)を送り返してあげること になります。
WWWサーバのプログラムには、CERN HTTPd、NCSA HTTPd などがありますが、 ここではその中でも最強の呼び声が高い Apache をインストールします。 Apache は NCSA HTTPd のように軽く、CERN HTTPd のように Proxy まで も備えている優れモノです。

Apache

Apacheの特徴

Apache の機能

Apache のインストール

ダウンロード

今回は、Apache を FreeBSD-2.2.8Release にインストールしました。 Apache の最新版は、以下の URL 及びそのミラーサイトから入手できます。
ftp://ftp.apache.org/
今回は、apache-1.3.9.tar.gz を入手しました。ソースファイルを入 手したら、展開します。
% tar xvfz apache-1.3.9.tar.gz
% cd  apache-1.3.9

モジュールの設定

Apache のプログラムは、「コア部分」と「モジュール部分」から構成さ れています。CGI や SSI などの機能はモジュールとして組み込みます。 標準では以下のモジュールが組み込まれることになっています。 モジュール構成の組み替えを行うには、コンパイル定義ファイルを書き換 えます。モジュールの定義ファイル src/Configuration を編集します。 書式は
AddModule [モジュール名]
で記述します。以下に各モジュールの概要について説明します。

コンパイル、インストール

モジュールの選択が完了したら、選択内容及びその他の設定内容を反映させるために Configure というシェルスクリプトを実行します。ここではモジュールの選択は 行わず、標準で選択されているモジュールを組み込むことにします。
% ./configure
次に make を実行してコンパイルします。
% make
エラーが出ずに、コンパイルが終了したら、次のようにしてインストールします。
% su
Password:
# make install
以上で Apache が /usr/local/apache 以下のディレクトリにインストールされます。 Apache のオンラインマニュアルは /usr/local/apache/man にインストールされる ため、FreeBSDの場合は、/etc/manpath.config、Linux では /etc/man.config を 編集して、オンラインマニュアルへのパスを追加しておきます。
# vi /etc/manpath.config
以下の行を追加
MANDATORY_MANPATH       /usr/local/apache/man
MANPATH_MAP             /usr/local/apache/bin   /usr/local/apache/man
以上で Apache のインストールは終了です。

Apacheの設定

Apache を起動させる前に、設定ファイルを編集します。Apache 1.3.4 からは設定 ファイルを今までの srm.conf , access.conf , httpd.conf から httpd.conf に 統一するようになっています。よって設定ファイルとして /usr/local/apache/conf/httpd.conf ファイルを編集します。 以下に主な設定項目を示します。

Apacheの起動

Apache の設定ファイル /usr/local/apache/conf/httpd.conf を編集したら、 以下のようにして Apache を起動します。
# /usr/local/apache/bin/httpd -f /usr/local/apache/conf/httpd.conf
Apache を終了させるには、以下のようにします。
# kill -TERM `cat /usr/local/apache/logs/httpd.pid`
また、Apache を再起動させるには以下のようにします。
# kill -HUP `cat /usr/local/apache/logs/httpd.pid`
また、Apache を完全に再起動させるには以下のようにします。
# kill -USR1 `cat /usr/local/apache/logs/httpd.pid`
次回からシステムの起動時に自動的に Apache が起動するようにするため、 /etc/rc.local ファイルに以下を追加します。
#
# Starting HTTP Server
#
if [ -f /usr/local/apache/bin/httpd -a -f /usr/local/apache/conf/httpd.conf ]; then
     echo -n 'Starting HTTP Server:'
     /usr/local/apache/bin/httpd
     echo ' Apache.'
fi

各種設定

アクセス制限

CGI & SSI

CGI(Common Gateway Interface) や SSI(Server Side Include) を使用したい場合は、 CGI や SSI のスクリプトを置くディレクトリに .htaccess ファイルを作成します。 具体例を以下に示します。
Options FollowSymLinks ExecCGI Includes
AddHandler cgi-script .cgi
AddType text/x-server-parsed-html .html
AddType text/x-server-parsed-html .htm
AddType application/x-httpd-cgi .cgi 
AddType audio/x-pn-realaudio .ra
その他の注意点として、ファイルやディレクトリのパーミッションを適切に設定する 必要があります。具体的には
CGI や SSI のスクリプトを置くディレクトリ   777
CGI や SSI のスクリプトファイル            755
アクセスカウンタ等でカウントするファイル     666
などが挙げられます。また、CGI や SSI のスクリプトファイルのオーナーは root にしないようにします。

戻る

sakai@oak.eg.t.kanazawa-u.ac.jp
Last modified: Thu Jul 6 14:43:09 JST 2000