9.3. Apache の基本設定と起動

9.3.1. Apache の基本設定

Apache を起動するには、Web サーバーを識別するためのサーバー名や、Web サーバーの発行するエラーメッセージの宛先メールアドレスなどのサーバー情報の設定が最低限必要です。/etc/httpd/conf/httpd.conf をテキストエディタで開き、必要に応じて以下のディレクティブを編集します。Apache の設定は、ディレクティブと呼ばれる設定項目を記述することにより行います。ここでは、まず最低限の設定を行い Apache を起動するまでの手順を説明します。設定ファイルの概要やディレクティブの記述方法は 項9.4項9.5も合わせて参照してください。

ServerRoot directory-path

Apache の設定ファイルが置かれているディレクトリパスを指定します。初期値の /etc/httpd を変更する必要はありません。

ServerRoot    "/etc/httpd"

ServerAdmin email-address

Web サーバーが発行するエラーメッセージの宛先メールアドレスを指定します。初期値では、以下のように指定されています。

ServerAdmin  root@localhost

必要に応じて、サーバー管理者などのメールアドレスを指定します。管理者が複数の場合は、サーバー管理者のメーリングリストのアドレスを指定すると効果的です。

ServerName fully-qualified-domain-name[:port]

サーバーを識別するための FQDN(サーバー名.ドメイン名 という形式の完全なホスト名)を指定します。Apache2.0 からはポート番号の指定が可能になっています。初期設定では、以下のようにコメントになっており、その場合には DNS を参照してサーバー名を返します。しかし、起動時のトラブルをさけるためにも明示的な指定を推奨します。もし、ホストベースのバーチャルホスト(詳細は、項9.21.1を参照)を使用する場合は、<VirtualHost> ディレクティブ内に指定が必要です。

#ServerName www.example.com:80

DocumentRoot directory-path

ドキュメントルートとなるディレクトリパスを指定します。ドキュメントルートとは、Web サーバーで提供する HTML ドキュメントを格納するディレクトリの起点となるディレクトリです。Turbolinux 11 Server の初期設定は、/var/www/html です。

DocumentRoot "/var/www/html"

この場合、Web ブラウザから、http://www.example.com/index.html のようにリクエストされると、/var/www/html を起点としてそのディレクトリ下にある index.html をクライアントへ返します。

Listen [IP-address:]portnumber

Web サーバーがリクエストを待ち受ける特定の IP アドレスとポート番号を指定します。初期設定では、以下のように指定されています。

Listen 80

Turbolinux 11 Server の初期状態ではすべてのネットワークインターフェースの 80 番ポートへのリクエストを待ち受けるように設定されています。必須指定項目です。ポート番号のみを指定すると、そのポート番号のすべての IP インターフェース宛てのリクエストを待ち受けます。IP アドレスとポート番号を指定した場合は、その IP アドレスとポート番号の組み合わせのリクエストのみを受け付けるようになります。複数指定する場合は、Listen ディレクティブを必要な行数分記述します。

ティップ

Apache1.3 以前に存在した、BindAddress ディレクティブと Port ディレクティブは、Apache2.0 からは削除されています。より柔軟な Listen ディレクティブに統合され設定が簡素化されています。

User unix-userid

httpd サーバープロセスの所有者をユーザー名、または #ユーザーID で指定します。初期値の apache を変更する必要はありません。

User       apache

Group unix-group

httpd サーバープロセスのグループをグループ名、または #グループID で指定します。このディレクティブは、User ディレクティブと対で指定します。初期値の apache を変更する必要はありません。

Group     apache

ServerSignature On|Off|EMail

Web サーバーが作成するページ(接続エラー表示や、FTP 接続時のディレクトリリスト、モジュールの情報など)にサーバーのバージョンやバーチャルホスト名などの情報を付加するかどうかを指定します。EMail を指定した場合は、ServerAdmin ディレクティブで指定したメールアドレスへのリンクも含みます。Turbolinux 11 Server の初期設定は On になっていますので不必要にサーバーの情報を公開したくない場合は Off に変更してください。

ServerSignature On

AddDefaultCharset On|Off|charset

HTML ファイルを作成する場合、そのファイルの文字コードを指定することが推奨されますが、HTML ファイルの中には、文字コードを明記していないファイルも存在します。このディレクティブでは、そのような HTML ファイルに対して文字コード情報を付加する機能を提供します。初期設定では、以下のようにコメント行のみが指定されており、機能は無効(Off)になっています。

# AddDefaultCharset UTF-8

注意

初期値の UTF-8 は、日本語の Web ページで文字化けを起こす原因となるため、Off を指定してサーバー側の機能を無効にすることを推奨します。その場合は、Web ブラウザ側の機能によって文字コードが判定されるようになります。

9.3.2. Apache の起動と停止

Apache サーバープログラムの実体は、httpd というデーモンです。Turbolinux 11 Server で httpd の起動や停止を行うには、/etc/init.d/httpd スクリプトに以下のオプションを指定して実行します。

表 9-2. /etc/init.d/httpd

オプション操作
starthttpd デーモンを起動します。
stophttpd デーモンを停止します。子プロセスを即座に停止し、その後、親プロセス自身を停止します。
restarthttpd デーモンを再起動します。stop のあとに start を実行します。
reloadhttpd デーモンの子プロセスを再起動しますが、親プロセスは終了しません。親プロセスは設定ファイルを再読込して、ログファイルを開き直します。
graceful処理中のリクエストに応答後、httpd デーモンの子プロセスを再起動しますが、親プロセスは終了しません。親プロセスは設定ファイルを再読込して、ログファイルを開き直します。
condrestartデーモンが動作しているかを確認後、再起動します。(/var/run/httpd.pid が存在するとき再起動します。)
statushttpd デーモンの起動状態を確認します。
configtest設定ファイルの書式をチェックします。

基本的なディレクティブの設定完了後、以下のように /etc/init.d/httpd スクリプトを実行して、Apache のデーモンである httpd を起動します。

# /etc/init.d/httpd start

クライアントの Web ブラウザから起動した Apache Web サーバーへアクセスできることを確認します。以下のように Web ブラウザでサーバーの URL を指定します。

http://www.example.com/

正常に動作していれば、Apache のメインページが表示されます。

ティップ

Turbolinux 11 Server では、DocumentRoot ディレクティブに /var/www/html が指定されていますので、このディレクトリに格納された HTML が表示されます。

ティップ

Apache には詳細なマニュアルが含まれます。マニュアルは、httpd-manual パッケージで提供されており、http://server-name/manual/ にアクセスし参照することができます。このオンラインマニュアルでは、各ディレクティブの詳細な解説を参照することができます。

起動した httpd を停止するには、以下のコマンドを実行します。

# /etc/init.d/httpd stop

Turbolinux 11 Server の起動時に httpd を自動的に開始するには、以下のように chkconfig コマンドを実行しておきます。

# chkconfig httpd on

設定ファイルを編集した場合は、変更を反映するために httpd を再起動する必要があります。

# /etc/init.d/httpd restart