俺の外部記憶

CentOS_Apache2_Install

最終更新:

external_storage

- view
管理者のみ編集可
UPDATE 2010年10月08日 (金) 23時08分44秒;

Apache2のインストール

  Version : apache 2.2.16
  ※順番間違えるとなんだかバグる

■yum版のMySQLを消す

バイナリインストールが目的なので入っていたら消す。
# yum list installed | grep httpd

何か表示されていたら消す
# yum remoee httpd

■ユーザの追加

インストールをする前にグループとユーザを作成する。
# groupadd apache
# useradd -g apache apache

■ダウンロード

ディレクトリを移動してからダウンロードするといいかも。
# cd /usr/local/src
# wget http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.16.tar.gz

■解凍

# tar zxvf httpd-2.2.16.tar.gz

■コンパイル前処理

# cd httpd-2.2.16
# CC="gcc" CFLAGS="-O2" \
  ./configure \
  --prefix=/usr/local/www/apache2.2 \
  --with-mpm=prefork \
  --enable-mods-shared=all \
  --enable-proxy \
  --enable-proxy-balancer \
  --enable-mods-shared=all \
  --enable-ssl

使ったオプション
設定 説明
CC="gcc" Cプログラムをコンパイルするプログラム。正直わからん
CFLAGS="-O2" Cコンパイラに与える追加フラグ。正直わからん
--prefix インストール先(指定しないとファイルがバラける)
--with-mpm リクエストの処理方法の指定
--enable-mods-shared Apacheのモジュールを動的にインストール
--enable-ssl SSL対応


※エラーが出た1
checking for zlib location... not found
checking whether to enable mod_deflate... configure: error: mod_deflate has been requested but can not be built due to prerequisite failures
zlibがないらしいのでインストール
# yum install zlib-devel

※エラーが出た2
no SSL-C headers found
configure: error: ...No recognized SSL/TLS toolkit detected
opensslがないらしいのでインストール
# yum install openssl-devel

■コンパイルとインストール

# make
# make install

■権限の変更

ディレクトリとその配下のファイルとディレクトリのユーザとグループを変更する。
# chown -R apache:apache /usr/local/www/apache2.2/

■Apacheの起動

#  /usr/local/www/apache2.2/bin/apachectl start

■Apacheを起動確認(ただしローカル内で)

元からあるindex.htmlにアクセスする

ブラウザから見る場合

URLに
http://localhost:80/
又は
http://127.0.0.1/

特に内容を変えていないのなら以下のように表示される
It works!

コマンドから見る場合

# telnet localhost 80
[enter]
[enter]

特に内容を変えていないのなら以下のように表示される
HTTP/1.1 200 OK
Date: Fri, 08 Oct 2010 16:44:00 GMT
Server: Apache/2.2.16 (Unix) mod_ssl/2.2.16 OpenSSL/0.9.8e-fips-rhel5 DAV/2
Last-Modified: Sat, 20 Nov 2004 20:16:24 GMT
ETag: "21082d-2c-3e9564c23b600"
Accept-Ranges: bytes
Content-Length: 44
Connection: close
Content-Type: text/html

<html><body><h1>It works!</h1></body></html>Connection closed by foreign host.

■自動起動設定

起動ファイルを名前を変えてコピーする
# cp /usr/local/src/httpd-2.2.16/build/rpm/httpd.init /etc/rc.d/init.d/httpd

httpd書き換え
#httpd=${HTTPD-/usr/sbin/httpd}
httpd=${HTTPD-/usr/local/www/apache2/bin/httpd}

#pidfile=${PIDFILE-/var/log/httpd/httpd.pid}
pidfile=${PIDFILE-/usr/local/www/apache2/logs/httpd.pid}

#CONFFILE=/etc/httpd/conf/httpd.conf
CONFFILE=/usr/local/www/apache2/conf/httpd.conf


自動起動を設定する
# chkconfig --add httpd
# chkconfig httpd on

自動起動の確認
# chkconfig --list httpd
mysql.server    0:off   1:off   2:on    3:on    4:on    5:on    6:off

次からこれだけで手動起動や停止もできる。
# /etc/rc.d/init.d/httpd start
又は
# service httpd start



■参考サイト

記事メニュー
目安箱バナー