Apache

Apache
Linux用WWWサーバの代名詞。
apache2.4からは設定方法が色々と変更されているので注意。

インストール

1. 前準備
ソースから入れる前にpkgconifgを統一しておく。
他の場合でもやった方がよさそうだが、書くのが面倒くさいので省略。
(Linux入れたら、とりあえずLAMP構築するだろうからここだけで大丈夫だべ)

# cd /usr/local/lib64
# ln -s /usr/lib64/pkgconfig .
# cd /usr/local/lib
# mkdir /usr/lib/pkgconfig
# ln -s /usr/lib/pkgconfig .

後は、https通信用にOpenSSLも入れておく。


2. APRのビルド・インストール
apacheのソースと一緒にビルドする方法もあるらしいが、
自分の環境では上手くいかなかったので別々にビルドする。

# tar zxvf apr-1.4.6.tar.gz
# cd apr-1.4.6
# ./configure --prefix=/usr/local/apr
# make
# make test
# make install



3. APR-Utilのビルド・インストール

# tar zxvf apr-util-1.5.1.tar.gz
# cd apr-util-1.5.1
# ./configure --with-apr=/usr/local/apr --prefix=/usr/local/apr-util
# make
# make test
# make install



4. Apacheのビルド・インストール
initの名前を“httpd”にするとyumとかで入れた物と被ってエラーになる場合がある。
よって、今回は“apache”という名前にしてインストールする。
PCREがまだ入ってない場合は、apacheのソースをビルドする前に入れておく事。

# tar zxvf httpd-2.4.3.tar.gz
# cd httpd-2.4.3
# vi config

 
※全部一行で書く

--prefix=/usr/local/apache
--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-ssl=/usr/local/openssl --with-pcre=/usr/local/pcre
--enable-ssl --enable-suexec --enable-rewrite --enable-auth-digest --enable-dav --enable-so
# ./configure `cat ./config`
# make
# make install


設定

I. apacheスクリプトのコピー

# cp /usr/local/apache/bin/apachectl /etc/init.d/apache
# chmod 755 /etc/init.d/apache
# ln -s /etc/init.d/apache /etc/init.d/httpd
# ln -s ../init.d/apache /etc/rc3.d/S96apache



II. ユーザーの準備

# adduser www -d /var/apache -s /sbin/nologin
# rm -rf /var/apache
# mkdir -p /var/apache/html
# chown -R root.www /var/apache



III. apacheの設定

# cd /usr/local/apache/conf

 
※以下のファイルを設定していく。他は必要の応じて

# vi httpd.conf
# vi extra/httpd-default.conf
# vi extra/httpd-languages.conf


アクセス制限

apache2.2系統とapache2.4系統ではアクセス制限のやり方が変わっているので注意
A. apache2.2
全てのアクセス許可する

Order allow,deny
Allow from all

全てのアクセスを拒否する

Order deny,allow
Deny from all



B. apache2.4
全てのアクセスを許可する

Require all granted

全てのアクセスを拒否する

Require all denied