Install Apache HTTP Server 2.4 from source on Ubuntu14.04
自分でサーバーをたてるときに使われるApche HTTP Server 2.4をソースからのインストール方法を記す。
基本的にソースコードをダウンロードしてコンパイルするだけで済むが,依存関係としてAPRとapr-utilが必要だ。これらがないとconfigureで以下のエラーが出る。
checking for APR... no configure: error: APR not found. Please read the documentation.
APRとapr-utilのソースをダウンロードして適切な場所に配置して,configureに--with-included-apr
オプションをつけておけばおけば一緒にビルドしてくれる。
これを踏まえるとインストールは以下のコマンドで完了する。
VER=2.4.12
cd ~/.local/src
wget -nc http://ftp.riken.jp/net/apache//httpd/httpd-$VER.tar.bz2
tar -xf httpd-$VER.tar.bz2
cd httpd-$VER
cd srclib/
wget -nc http://ftp.riken.jp/net/apache//apr/apr-1.5.2.tar.bz2
tar -xf apr-1.5.2.tar.bz2
mv apr-1.5.2 apr
wget -nc http://ftp.riken.jp/net/apache//apr/apr-util-1.5.4.tar.bz2
tar -xf apr-util-1.5.4.tar.bz2
mv apr-util-1.5.4 apr-util
cd ../
./configure --prefix="$HOME/.local/apache2" --with-included-apr # default /usr/local/apache2
make && make install
今回はApacheを~/.local/apache2
にインストールした。
以下のコマンドでApacheのサーバーを起動して動作を確認する。
sudo ~/.local/apache2/bin/apachectl -k start
ブラウザでhttp://localhost
のアドレスにアクセスして"It works!"
と表示されれば成功だ。
apachectl
は管理者権限で実行しないと以下のエラーが出るので注意する。
senooken% 0-0: ~/.local/apache2/bin/apachectl -k start
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message (13)Permission denied: AH00072: make_sock: could not bind to address [::]:80 (13)Permission denied: AH00072: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down AH00015: Unable to open logs