bate's blog

調べたこと実装したことなどを取りとめもなく書きます。

LAMPインストールのメモ

googleで検索すればこれより良い文献はいくらでもあります。
ここにあるメモそれらのサイトの文献を参考にしています。
要はパクリなのでそちらを参考にしましょう。
エラーはエラー文をコピペで検索しましょう。

OS は xubuntu 8.10
1. Apache-2.2.11 のインストール
httpd-2.2.11.tar.gz を /usr/local/src に保存
wget とか、firefoxでDesktopにダウンしてから、mv で移動するとか
保存場所に移動して、展開しシンボリックリンクをしておく
cd /usr/local/src
sudo tar zxvf httpd-2.2.11.tar.gz
sudo ln -s httpd-2.2.11 httpd
展開した httpd に移動して、インストール作業
cd /usr/local/src/httpd
sudo ./configure --enable-so
(--enable-soを付けてerrorが出た気がするが、googleで解決できる程度のもの)
sudo make
sudo make install
インストールでできた apache2 ディレクトリに移動し、 httpd.conf を編集
cd /usr/local/apache2/conf
sudo vi httpd.conf
Esc を押して、/ServerName で検索する。n で次に移動する
ServerName のコメントアウト(#)を消して、名前を設定
User, Group も同様にして設定する
テストをする
sudo /usr/local/apache2/bin/apachectl configtest
Syntax OK; と出れば良い
Apache を起動する
sudo /usr/local/apache2/bin/apachectl start
ブラウザで、http://localhost にアクセスして It works! 的な文字が出れば良い
ver2.2.11は羽根のページには行かないと思われる。

2. PostgreSQL-8.3.5 のインストール
libxml, readline, ncurses が必要になる
sudo apt-get install libxml libxml2-dev
sudo apt-get install libreadline5-dev libncurses5-dev zlib1g-dev
等で、インストールする
PostgreSQLを /usr/local/src にダウンロードする
保存場所に移動、展開、シンボリックリンク
cd /usr/local/src
sudo tar zxvf postgresql-8.3.5.tar.gz
sudo ln -s postgresql-8.3.5 postgresql
postgres ユーザーを作成して、postgres になる
sudo adduser postgres
この時、postgresのパスワードも設定するはず。
PostgreSQL 関係のディレクトリをpostgresの所有にする
sudo chown -R postgres:postgres postgresql
sudo chown -R postgres:postgres postgresql-8.3.5
postgres になりインストール
su postgres
cd /usr/local/src/postgresql
./configure --enable-multibyte=EUC_JP --enable-syslo
make
make install
postgres のホームディレクトリを /usr/local/pgsql:/bin/bash としておく
su user_name(ユーザー)
sudo vipw
postgres ユーザーの.bashrcを編集
su - postgres
cd
vi .bashrc
export POSTGRES_HOME=$HOME
export PGLIB=$POSTGRES_HOME/lib
export PGDATA=$POSTGRES_HOME/data
export MANPATH=$MANPATH:POSTGRES_HOME/man
PATH=$PATH:$POSTGRES_HOME/bin
source .bashrc
データベースの初期化とpostgresql.confの編集
initdb
cd /usr/local/pgsql/data
vi postgresql.conf
Escを押して、/silent_modeを検索して、onにする
起動と終了
pg_ctl start
pg_ctl stop
テスト(pg_ctl startしてある必要があるかも)
cd /usr/local/src/postgresql
make check
All ... tests passed.で良し
postmasterの自動起動
cd /etc/init.d
sudo vi postgres

#!/bin/sh
#
# postgres - This script is used to start/stop
# the postgreSQL listener process.
#
# Usage
#
# You can use this script manually, and/or you
# can install this script into the runlevel system
# by running "sh postgres.init.sh install"
#
# Credits
#
# Thomas Lockhart # modified from other startup files in the
# RedHat Linux distribution
#
# Clark Evans # cleaned up, added comments, etc.
#
# modified for PostgreSQL book written by Tatsuo Ishii
#
# RedHat Stuff
#
# chkconfig: 345 85 15
# description: Starts and stops the PostgreSQL backend daemon\
# that handles all database requests.
# processname: postmaster
#
# Config Variables
#
PGACCOUNT="postgres"
#
# The non-root user account which will be used to run the
# PostgreSQL executeable. For this script to work, the
# shell for this account must be SH/BASH.
#
PGDATA="/usr/local/pgsql/data"
POSTMASTER="/usr/local/pgsql/bin/postmaster"
PG_CTL="/usr/local/pgsql/bin/pg_ctl"
#
# The executable program which is to be run, in this case
# it is the listener, which waits for requests on the port
# specified during configuration.
#
# Source function library.
. /etc/rc.d/init.d/functions
#
# See how we were called.
#
case "$1" in
  start)
echo -n "Starting postgres: "
su - $PGACCOUNT -c "$POSTMASTER -D $PGDATA"
echo
touch /var/lock/subsys/postgres
;;
  stop)
echo -n "Stopping postgres: "
$PG_CTL -m f -D $PGDATA stop
echo
rm -f /var/lock/subsys/postgres
;;
  *)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0

3. PHP-5.2.8
/usr/local/srcにダウンして、そこで展開する
cd /usr/local/src
sudo tar zxvf php-5.2.8
sudo ln -s php-5.2.8 php
PHPのインストール
cd /usr/local/src/php
sudo ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-pgsql --enable-so
sudo make
sudo make install
libphp5.so が作成されているかどうか確認する
cd /usr/local/apache2/modules
cd ls
libphp5.soがあれば良し
なければ、下記のURLを参照
http://www.oklab.org/language_c/php5_0_2_install_bug.htm
php.iniをコピーして編集する
sudo cp /usr/local/src/php/php.ini-dist /usr/local/lib/php.ini
cd /usr/local/lib
sudo vi php.ini
output_buffering = Off
magic_quotes_gpc = On
magic_quotes_runtime = Off
magic_quotes_sybase = Off
mbstring.language = japanese
mbstring.Internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = SJIS
mbstring.encoding_translation = Off
mbstring.detect_order = auto
mbstring.substitute_charactor = none;
Escを押して、/output等として検索すると良い
httpd.conf を編集してapache起動
cd /usr/local/apache2/conf
sudo vi httpd.conf
Escを押して/LoadModuleと検索してサンプルの記述がある下に追加
LoadModule php5_module  modules/libphp5.so
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
sudo /usr/local/apache2/bin/apachectl restart
お好みで、phpファイルを作って /usr/local/apache2/htdocs に置き、localhostで動けば良し