2008年10月30日木曜日

macportsでApache2 + PHP5 + Postgresql

■Postgresqlのインストールと設定
  1. Postgresqlのインストール
    $ sudo port install postgresql83 postgresql83-server
  2. データベース作成
    $ sudo mkdir -p /opt/local/var/db/postgresql83/defaultdb
    $ sudo chown postgres:postgres /opt/local/var/db/postgresql83/defaultdb
    データベースの文字コードにEUC_JPも使用したいので--encoding=utf-8 --no-localeを追加
    $ sudo su postgres -c ‘/opt/local/lib/postgresql83/bin/initdb -D /opt/local/var/db/postgresql83/defaultdb --encoding=utf-8 --no-locale’
  3. データベース起動
    $ sudo su postgres -c ‘/opt/local/lib/postgresql83/bin/postgres -D /opt/local/var/db/postgresql83/defaultdb &’
  4. データベースユーザー登録
    $ sudo su postgres -c '/opt/local/lib/postgresql83/bin/createuser [username]'
■Apache2のインストールと設定
  1. Apache2のインストール
    $ sudo port install apache2
  2. 設定ファイルがないのでサンプルをコピー
    $ sudo cp /opt/local/apache2/conf/httpd.conf.sample /opt/local/apache2/conf/httpd.conf
■PHP5のインストールと設定
  1. PHP5のインストール
    $ sudo port install php5 +apache2 +postgresql83 +pear
  2. PHP5の設定
    $ sudo cp /opt/local/etc/php.ini-recommended /opt/local/etc/php.ini
  3. Apacheの設定
    $ cd /opt/local/apache2/modules
    $ sudo /opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so
    httpd.confに下記内容を追加
    # php settings
    Include conf/extras-conf/mod_php.conf
  4. Apache2設定ファイルのチェック
    $ sudo /opt/local/apache2/bin/apachectl configtest
    Syntax OK
  5. Apache2の起動
    $ sudo /opt/local/apache2/bin/apachectl start
■起動時の設定
  1. デーモンとして登録
    $ sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist
    $ sudo launchctl load -w /Library/LaunchDaemons/org.macports.postgresql83-server.plist

0 件のコメント: