最近アプリ開発してばっかの俺が久しぶりにLinuxネタです。
2012/2月にapache2.4.1がリリースされて1年ちょっと経過し、
じわじわと情報が増えてきたところでようやく僕もapache2.4.3をインストールしてみました。
※2013/03/28時点での最新はv2.4.4
まずソースをDLして展開。
# wget 'http://ftp.meisei-u.ac.jp/mirror/apache/dist//httpd/httpd-2.4.3.tar.gz' # tar zxvf httpd-2.4.3.tar.gz # cd httpd-2.4.3これまでだと、このまま./configureしてたのですが、2.4からはそれはNGです。
INSTALLファイルにこう書いています。
Consider if you want to use a previously installed APR and APR-Util (such as those provided with many OSes) or if you need to use the APR and APR-Util from the apr.apache.org project. If the latter, download the latest versions and unpack them to ./srclib/apr and ./srclib/apr-util (no version numbers in the directory names) and use ./configure's --with-included-apr option.つまり--with-included-aprオプションを使うならaprとapr-utilをDL&展開して
./srclib以下にapr と apr-utilという名前で置きなさい。
ということらしい。
# cd ./srclib # wget wget http://ftp.tsukuba.wide.ad.jp/software/apache//apr/apr-1.4.6.tar.gz # wget http://ftp.yz.yamagata-u.ac.jp/pub/network/apache//apr/apr-util-1.5.1.tar.gz # tar zxvf apr-1.4.6.tar.gz # tar zxvf apr-util-1.5.1.tar.gz # mv apr-1.4.6 apr # mv apr-util-1.5.1 apr-utilあと途中でPCREも必要だと怒られたので入れておきます。
# wget 'ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.32.tar.gz' # tar zxvf pcre-8.32 # ./configure --prefix=/usr/local/pcre/v8.32 # make # make installではapacheのインストールを行います。
※オプションは適宜ご自由に。
# ./configure --prefix=/usr/local/apache2/v2.4.3 --with-included-apr --enable-module=so --enable-mods-shared=most --enable-ssl --enable-rewrite --with-mpm=prefork --with-pcre=/usr/local/pcre/v8.32--with-mpm=preforkオプションを付けておかないと、デフォルトでevent-mpmでインストールされてしまいます。
非同期で多アクセスには強いですが、僕のようなPHPerな開発者にはprefork-mpmがオススメです。
# make # make installこれで上手くインストールされるはずです。
後は基本的にこれまでのバージョンのものと同じですが、apacheの設定ファイルなんかは
order allow,deny allow from allだったものが、v2.4からは
Require all granted # 禁止の場合は # Require all deniedになります。
さらには、192.168.0.10のみ許可する場合は
となり、逆に192.168.0.10のみ拒否する場合はRequire ip 192.168.0.10
のようになります。Require all granted Require not ip 192.168.0.10 # またはRequire all granted Require ip 192.168.0.10
うーん、なぜ今さら変えてくるかapache.org。
これまでの書き方は非推奨となるそうで、一応まだ使えるみたいです。
あと、MaxClientsはMaxRequestWorkersに書き変わりました。
以上でぇぇぇぇす。