Apache2のインストール

1. 事前準備

1.1 libiconvのインストール

LAMP環境構築前に、文字コード変換ライブラリである libiconv をインストールしておくことを推奨いたします。

1.2 SSLライブラリのインストール

SSL通信を利用するため、以下のコマンドで openssl-devel をインストールしてください。

yum install openssl-devel

2. Apache2 のインストール

Apache公式サイト:Apache HTTP Server

2.1 httpd 2.0 の場合

以下のオプションを指定してコンパイルします。

./configure \
  --enable-so \
  --enable-ssl \
  --enable-rewrite \
  --enable-deflate \
  --enable-mods-shared=all \
  --with-z=/usr/local \
  --with-ssl=/usr/local

2.2 httpd 2.2 の場合

./configure \
  --enable-so \
  --enable-modules=all \
  --enable-mods-shared=all \
  --enable-ssl \
  --with-included-apr

その後、以下の手順でコンパイルおよびインストールを実施します。

make -j
make install

3. 起動スクリプトの設定

3.1 起動スクリプトのコピー

Apache起動用スクリプトを所定のディレクトリへコピーします。

cp ./build/rpm/httpd.init /etc/rc.d/init.d/httpd

3.2 パーミッションの設定

起動スクリプトに実行権限を付与します。

chmod 755 /etc/rc.d/init.d/httpd

3.3 自動起動の設定

システム起動時にApacheが自動的に起動するよう設定します。

chkconfig httpd on

4. httpd.conf の設定

4.1 PHPのMIME設定

PHPファイルの扱いを定義するため、以下のディレクティブを追加します。

AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps

4.2 ServerLimit(mpm_prefork_moduleの場合)

mpm_prefork_module を利用する場合のサーバー設定例は以下の通りです。

<IfModule mpm_prefork_module>
  ServerLimit 512
  StartServers 5
  MinSpareServers 5
  MaxSpareServers 10
  MaxClients 256
  MaxRequestsPerChild 0
</IfModule>

4.3 ログの設定

以下の設定により、特定のリソースおよびIPからのアクセスを除外しつつ、rotatelogs を利用してログをローテーションします。

SetEnvIf Request_URI "(\.gif|\.jpe?g|\.png|\.css|\.js|\.ico|\.3gp|\.3g2|\.amc)$" log
SetEnvIf Remote_Addr "^192\.168\." log
SetEnvIf Remote_Addr "^127\.0\." log

ErrorLog "|/usr/local/apache2/bin/rotatelogs /usr/local/apache2/logs/error.%Y%m%d.log 86400 540"
CustomLog "|/usr/local/apache2/bin/rotatelogs /usr/local/apache2/logs/access.%Y%m%d.log 86400 540" combined env=!log

4.4 リダイレクト設定

以下の設定により、ドメインのリダイレクトを実施します。

###################################################
# リダイレクト
###################################################

ServerName domain.domain
ServerAlias *.domain.domain
Redirect permanent / http://www.dom.dom/

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です