.
Linux 活用ガイド:目次

サーバ構築ガイド

レンタル ガイド

ショップ 構築ガイド

情報漏洩対策

Apache2初期導入の管理・設定例

世界最大シェアのWebサーバーApacheの基本的な設定例を掻い摘んで説明しています。バージョンは Apache2 です。1.3系もほとんど共通しています。異なる場合は触れています。

Apache 設定ファイルの構成

Apache2 から設定ファイル構成が分かれています。Apache は過去に分かれたり一つに纏められたりしています。

  • /etc/httpd/conf/httpd.conf
    • Apacheの基本的な設定を行ないます。ドキュメントルートや全体的な挙動設定など。通常のディレクティブ設定も行なえます。ここのファイルで既述されたディレクティブ設定が最優先され、conf.d に同じディレクトリに対しての設定があった場合はここで記述された設定を無視します。
  • /etc/httpd/conf.d/ssl.conf
    • SSLに関する基本的な設定を行なうファイルです。(サーバー証明書によるSSL化やクライアント認証等)   SSLに関するディレクティブ設定も行なえますが、通常、このファイルでは 指定しません。指定した場合は以下に説明する " 任意.conf " よりも優先に評価されます。
  • /etc/httpd/conf.d/任意.conf
    • /conf.d/ ディレクトリ内に任意の.conf ファイルを設置することで個別に設定ファイルを管理できるようになります。

通常はディレクティブ毎、あるいはプロジェクト毎のディレクッティブグループといった分け方をすると思います。ファイルを分けることでサーバー管理が楽になり、管理者同士の引継も楽になります。 設定ミスからのセキュリティホールも軽減されるはずです。

/etc/httpd/conf.d/任意.conf は一番最期に読みこまれ、よって最期に評価されます。

プロジェクトごとの管理 設定例

プロジェクトごとに管理する例を以下に示します。

公開するディレクティブは <Direvtory /任意> ~ </Directory> の間で指定します。 ディレクティブに関する詳細はマニュアルを参照して下さい。

/etc/httpd/conf.d/project-x.conf (任意に作成する)

Alias /project-x/ "/data/work/project-x/"
# 上記設定はドキュメントルートディレクトリ外にあるファイルを
# Webアドレス http://docroot/project-x/ で表示させるためAlias設定です。

### project-x ディレクティブ
<Directory /data/work/project-x/>
SSLRequireSSL
# 通常のhttp接続は許可せず、https接続のみに限定します。
SSLVerifyDepth 1
SSLOptions +OptRenegotiate
SSLVerifyClient require
# クライアント認証を指定 ここでは同サーバーと同じ認証局(CA)が発行した
# 証明書を提示しなければSSLセッションを確立できない。
# つまり上記と組み合わせることで
# 強固なセキュリティを確保できる。当然.htaccessによるBASIC認証は必要。

# 以下は基本的なディレクティブ設定
Options FollowSymLinks ExecCGI +Includes
AllowOverride AuthConfig
order deny,allow
deny from all
allow from 192.168.15.10 192.168.1.101 192.168.15.12
</Directory>

例のコメント(#)は設定ファイルに関する注釈です。このようにプロジェクトごとに設定ファイルを作成するか、プロジェクトグループごとに設定ファイルを新たに作成し、管理するとサーバー管理者同士の引継ぎも行いやすくなります。

Apacheの設定ファイルは、非常にデリケートで、Webminなどの管理ツールをつかってしまうと、Apacheが起動できなく亊がよくあります。 Apacheの管理は手作業が基本ですから、このような管理方法は助かります。 Apacheは過去に何回かデフォルトで設定ファイルが1つにまとめられたり、分かれたりしています。個人的には分かれている方が管理し易いです。

Apache2 管理・設定例


Apache に関する書籍案内

bottom_mark
ページ最上部
ページ最上部 前のページ