apache, php, subversionのセットアップ 〜 1.apache編 〜

前回は準備編という事で
Berkeley DBのインストールを完了しましたが
続いてapacheのインストールをやります。


今までは、枯れているということで
1.3.xを使ってきましたが
今回利用予定のwebdavだったり、資料の豊富さだったり
といろいろな言い訳から2.0.x系を使います。

apacheのインストール

subversion, apacheの連携のために

  • 前回インストールしたBerkeley DBをapacheのDBライブラリとして利用します。
  • 且つ、subversionリポジトリをhttpで取得するためにwebdavを利用します。

以上の条件をふまえたインストール手順を書いて行きます

ダウンロード先


http://httpd.apache.org/download.cgi
ここから、httpd-2.0.59.tar.gzをダウンロード
(Versionはその時、最新のものを落とす)

インストール
  1. tar zxvf httpd-2.0.59.tar.gz
  2. cd httpd-2.0.59
  3. ./conf.sh -> configureは再コンパイルとかでも使うのでファイルに記述(以下に記載)
  4. chmod 777 conf.sh -> 実行権限がつけばOK
  5. make
  6. sudo make install

conf.shの内容


#!/bin/sh
./configure \
--prefix=/usr/local/apache/2.0.59 \
--enable-so=yes \
--enable-dav=yes \
--with-berkeley-db=/usr/local/BerkeleyDB.4.5

  • バージョンと同じ名前のフォルダを作成し、バージョン分けに使う(詳細はtipsに...)
  • PHPとかいれていくのでsoを有効にする
  • webdavを有効にする(subversion連携で使う)
  • berkeley DBを使う(subversion連携で使う)

tips

  • バージョンを分ける
    • バージョンのフォルダを作成し、インストール
    • それでもって、同じ階層にcurrentというシンボリックリンクを作ってあげる
    • 連携する(PHPインストールする時とか)際のパスはcurrenttの方にすると、バージョン色々使える
    • これは、PHPとかでも同じ方法使っていきます
    • というよりむしろPHPでこそつかうべきかな?(Bugがあったときに戻せるとか、動作がかわったから戻したいとか)
  • berkeley DBがapacheのライブラリとして組み込まれているかを確認する方法(Mac用)

linuxであれば、lddを利用して以下のように確認する


ldd /usr/local/apache/current/bin/httpd
結果の中にBerkeleyDBの文字があればOK
ただし、Macではlddが使えないので以下のようにする

otool -L /usr/local/apache/current/bin/httpd
これで同じように結果からBrekeleyDBの文字があればOK
この方法は以下のサイトを参考にしました。

http://developer.apple.com/jp/technotes/tn2071.html