next up previous contents
Next: 6.1.2 動作の確認 Up: 6.1 WWWサーバ Previous: 6.1 WWWサーバ

6.1.1 Apache の設定

WWWサーバでもっとも利用されている Apacheは既にIPv6に対応しています。 ここでは、Apache2 を導入してみることにしましょう。 FreeBSDのパッケージにはwwwカテゴリーにapache-2.0.53 があります。 パッケージを導入すると、/usr/local/etc/apache2/ 以下に設定ファイルが、 /usr/local/etc/rc.d/apache2.shがサーバのスタートファイルになります。

FreeBSDでは、パッケージから導入したものは全て /usr/local/etc 以下に 設定ファイルがおかれ、スタートスクリプトが /usr/local/etc/rc.d/以下に 置かれるようになっています。 5系列では、現在ではこうして置かれたスクリプトも全て /etc/rc.conf から コントロールするように改められています。実際に、/usr/local/etc/rc.d/apache2.sh の一部を下に示します。

#
# Add the following lines to /etc/rc.conf to enable apache2:
# apache2_enable (bool):      Set to "NO" by default.
#                             Set it to "YES" to enable apache2
# apache2ssl_enable (bool):   Set to "NO" by default.

つまり、スクリプトが /etc/rc.conf を読み、apache2_enable が YES でないと動かないようになっているのです(その他の起動時のオプション なども /etc/rc.conf の変数を通じて設定するようになっています)。 従って、Apache2 を動かすためには、/etc/rc.conf に以下の行を追加します。

# /etc/rc.conf の末尾
apache2_enable="YES"

但し、こうした新しい方針に従っていないパッケージでは、まだ、 hoge.sh.sample のように 末尾の .sampleを名前から取り除かないと使えないタイプがあるので 注意しましょう(FreeBSDでは /usr/local/etc/rc.d/ にあって拡張子が .sh のタイプのスクリプトは全て起動時に自動的に起動されるようになっています)。

/usr/local/etc/apache2/ の設定ファイルの基本は、httpd.conf です。 Apacheの設定は、ほとんどこのhttpd.conf に設定するだけになっています。 きちんとDNSが立ち上がっていれば、問題なくデフォルトの設定のみで動作する 筈です。

    # /usr/local/etc/rc.d/apache2.sh  start

もし、httpd が立ち上がっていなければ、何らかの設定ミスがあります。

     # ps ax |grep httpd
(httpd のプロセスが幾つかある筈)

コンソールへのエラー出力か、あるいは /var/log/httpd-err.log を見て、対処 して下さい。httpd が立ち上がらない原因のほとんどは、名前に関する問題です。 自分自身に与えた名前に対応するIPアドレスが見つからないような場合、特に IPv6アドレスは設定しても、IPv4アドレスが設定されていないようなミスに 注意しましょう。

自分自身の名前は、hostname コマンドで分かります。

    # hostname
    dns.s01.wakhok.ac.jp

この名前は、起動時に /etc/rc.conf から読み込まれて自動的に設定されます。

    # /etc/rc.conf の名前に関する設定
    hostname="dns.s01.wakhok.ac.jp"

一時的には、hostname コマンドに引数を与えることで変更も出来ます。

    # hostname dns.s01.wakhok.ac.jp



Noriyo Kanayama