Apache
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
*PostgreSQL+PHP+Apacheインストール [#rb500603]
#contents
*注意事項 [#g30639be]
バージョン8.1.4, 8.0.8, 7.4.13, 7.3.15以前のバージョンに...
[[詳細(SRA OSS):http://www.sraoss.co.jp/PostgreSQL/8.1.4/...
[[詳細(ITpro):http://itpro.nikkeibp.co.jp/article/COLUMN/...
*PostgreSQLのインストール [#pce29962]
PostgreSQL,PHP,ApacheのRPMは全て削除しておきます~
バージョンアップする場合はバックアップを取って止めておき...
postgres ユーザーの作成
# /usr/sbin/useradd -d /usr/local/pgsql postgres
# chmod 755 /usr/local/pgsql
作業ディレクトリ作成
# mkdir /usr/local/src/postgresql-7.4.9
# chown postgres /usr/local/src/postgresql-7.4.9
ソース取得 http://www.postgresql.jp/
# su postgres
$ tar xvzf postgresql-7.4.9.tar.gz
$ cd postgresql-7.4.9
$ ./configure
7.3以降はマルチバイトサポートはデフォルトで有効になる~
ログを取るときは --enable-syslog ODBC接続する場合は --ena...
JDBCドライバをビルドする場合は --with-java でもANT1.5以上...
&color(red){--without-readline を指定しろとか言われると r...
$ make all
$ make check
$ make install
バージョンを上げるとエラーが出てmake checkができないこと...
これは古いlibpq.soが残っているかららしい
# rm -fr /usr/local/pgsql/lib
などとして削除しちゃいましょう
**contrib関連のインストール [#z3453a89]
別にインストール必要はありません~
bisonが必要です
$ su postgres
$ cd /usr/local/src/postgresql-7.4.9/contrib
$ gmake all
$ gmake install
**パスの設定 [#i007af38]
postgresとPostgreSQLを使用するユーザー全ての.bashrcに以下...
PATH="$PATH":/usr/local/pgsql/bin
export POSTGRES_HOME=/usr/local/pgsql
export PGLIB=$POSTGRES_HOME/lib
export PGDATA=$POSTGRES_HOME/data
export MANPATH="$MANPATH":$POSTGRES_HOME/man
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
設定の反映
$ source ~/.bashrc
データベース初期化
$ initdb --encoding=EUC_JP --no-locale
一行追加
# vi /etc/ld.so.conf
/usr/local/pgsql/lib
# /sbin/ldconfig
**自動起動の設定 [#p075a31b]
# cp /usr/local/src/postgresql-7.4.9/contrib/start-scrip...
# chmod 755 /etc/rc.d/init.d/postgresql
# /sbin/chkconfig --add postgresql
# /etc/rc.d/init.d/postgres start
**Pg.pmのインストール [#c3d3dd44]
Pg.pmは7.3から別管理になったそうな~
PerlからPg.pmで接続する場合は以下を実行
http://gborg.postgresql.org/project/pgperl/download/downl...
Pg-2.1.1.tar.gz
# tar xvzf Pg-2.1.1.tar.gz
# cd Pg-2.1.1
# POSTGRES_HOME=/usr/local/pgsql
# export POSTGRES_HOME
# perl Makefile.PL
# make
# make install
**syslog関連設定 [#e134909b]
[[参考サイト:http://search.net-newbie.com/pgsql/runtime-c...
$ vi /usr/local/pgsql/data/postgresql.conf
log_connections = true # 接続ログを残す
log_statement = true # 全てのSQL文を記録
debug_print_parse = true # パースツリーを出力します
debug_print_rewritten = true # 書き換え後のパースツリー...
debug_print_plan = ture # 問合せプランを出力します
syslog = 2 # 出力を制御します(0:出力なし 1:syslogとstdou...
syslog_facility = 'LOCAL0'
# /etc/rc.d/init.d/postgres restart
PostgreSQLのログファイルは別に吐き出すように設定
$su
# vi /etc/syslog.conf
local0.* /var/log/postgres # 他にlocal0を使っていないか...
# ps ax | grep syslog
# kill -HUP 調べたsyslogdのPID
ログローテーション設定
# vi /etc/logrotate.d/postgres
"/var/log/postgres"
{
rotate 4
weekly
sharedscripts
postrotate
/usr/bin/killall -HUP syslogd
endscript
}
*Apacheのインストール [#tf8c8011]
http://www.apache.or.jp/
# tar xvzf apache_1.3.34.tar.gz
# cd apache_1.3.34
# OPTIM="-O2" ./configure --enable-module=so --enable-mo...
# make
# make install
Options
|FollowSymLinks|シンボリックリンクを有効|
|Indexes|ディレクトリ内丸見え|
|Includes|SSI有効|
|ExecCGI|CGI有効|
|MultiViews|ブラウザを判定(?)|
AllowOverride
|AuthConfig|認証有効|
|FileInfo|ドキュメントタイプのディレクディブ使用許可|
|Indexes|ディレクトリインデックス制御|
|Limit|ホストへのアクセス制御|
Apacheのバージョンを表示させないようにするには httpd.conf...
ServerSignature Off
ServerTokens ProductOnly
画像ファイルはログに記録しないためには httpd.conf において
<IfModule mod_setenvif.c>
# no add images log
SetEnvIf Request_URI "\.(gif)|(jpg)|(png)$" no_log
.....
CustomLog /usr/local/apache/logs/access_log combined env...
**自動起動の設定 [#g7d8ed26]
# cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/ht...
# chmod 755 /etc/rc.d/init.d/httpd
# vi /etc/rc.d/init.d/httpd
以下を追加
#!/bin/sh
# chkconfig: - 85 15
# description: Apache is a World Wide Web server. It is...
# HTML files and CGI.
# processname: httpd
# pidfile: /usr/local/apache/logs/httpd.pid
# config: /usr/local/apache/conf/httpd.conf
# /sbin/chkconfig --add httpd
# /etc/rc.d/init.d/httpd start
**ログのローテーション設定 [#ddb838ec]
# vi /etc/logrotate.d/apache
/usr/local/apache/logs/*_log
{
rotate 4
compress # ZIP圧縮する場合
weekly
sharedscripts
postrotate
/usr/local/apache/bin/apachectl restart
endscript
}
# /usr/sbin/logrotate -f /etc/logrotate.d/apache
コマンドにて /usr/local/apache/logs 内に access_log.1 err...
*PHP4のインストール [#ud9566ad]
[[PHPめも]]も参考にして下さい :D
# tar xvzf php-4.4.1.tar.gz
# cd php-4.4.1
# ./configure --with-pgsql --with-apxs=/usr/local/apache...
&color(red){--enable-mbstr-enc-trans は4.3.0以降は廃止};~
&color(red){--enable-trans-sid は4.2.0以降は常にコンパイ...
&color(red){コマンドライン版は4.3.0から常に構築される};~
&color(red){CGI版とCLI版は違うものらしいぞっ};
GDを使用する場合はこんな感じ
# ./configure \
--with-pgsql --with-apxs=/usr/local/apache/bin/apxs \
--enable-zend-multibyte --enable-mbstring --enable-mbreg...
--with-gd --with-zlib-dir=/usr --with-jpeg-dir=/usr \
--with-png-dir=/usr --with-freetype-dir=/usr --with-ttf \
--enable-gd-native-ttf --enable-gd-jis-conv
libpng, libjpeg, freetype がないと言われたら devel を入れ...
**php.iniの設定 [#babc391d]
# cp /usr/local/src/php-4.4.1/php.ini-dist /usr/local/li...
;; 出力バッファリングを有効にする
output_buffering = On
;; mb_output_handlerによる出力変換を有効にする
output_handler = mb_output_handler
;; HTTPヘッダ charset を設定
default_charset = Shift_JIS
;;日本語主体で使用
mbstring.language = Japanese
;; 内部エンコーディングをEUC-JPに設定
mbstring.internal_encoding = EUC-JP
;; HTTP入力エンコーディング変換をautoに設定
mbstring.http_input = auto
;; SJISに変換
mbstring.http_output = SJIS
mbstring.encoding_translation = On 必要?
mbstring.detect_order = auto 必要?
;; 無効な文字を出力しない
mbstring.substitute_character = none;
mbstring.func_overload = 0
;; 4.1.0から推奨
register_globals = Off
# make
# make install
**httpd.confの書き換え [#c1c1e70e]
AddType application/x-httpd-php .php
を追加してApache再起動
**CGI版をインストールする場合 [#p9bf9de7]
&color(red){4.3.0以降は不要};
# make distclean
# ./configure --with-pgsql --enable-track-vars --enable-...
# make
# make install
これで/usr/local/bin/php にバイナリがインストールされる
*ミニメモ [#g2f3b125]
PostgreSQL7.3からはホームディレクトリの .pgpass に、 デー...
#exlink
終了行:
*PostgreSQL+PHP+Apacheインストール [#rb500603]
#contents
*注意事項 [#g30639be]
バージョン8.1.4, 8.0.8, 7.4.13, 7.3.15以前のバージョンに...
[[詳細(SRA OSS):http://www.sraoss.co.jp/PostgreSQL/8.1.4/...
[[詳細(ITpro):http://itpro.nikkeibp.co.jp/article/COLUMN/...
*PostgreSQLのインストール [#pce29962]
PostgreSQL,PHP,ApacheのRPMは全て削除しておきます~
バージョンアップする場合はバックアップを取って止めておき...
postgres ユーザーの作成
# /usr/sbin/useradd -d /usr/local/pgsql postgres
# chmod 755 /usr/local/pgsql
作業ディレクトリ作成
# mkdir /usr/local/src/postgresql-7.4.9
# chown postgres /usr/local/src/postgresql-7.4.9
ソース取得 http://www.postgresql.jp/
# su postgres
$ tar xvzf postgresql-7.4.9.tar.gz
$ cd postgresql-7.4.9
$ ./configure
7.3以降はマルチバイトサポートはデフォルトで有効になる~
ログを取るときは --enable-syslog ODBC接続する場合は --ena...
JDBCドライバをビルドする場合は --with-java でもANT1.5以上...
&color(red){--without-readline を指定しろとか言われると r...
$ make all
$ make check
$ make install
バージョンを上げるとエラーが出てmake checkができないこと...
これは古いlibpq.soが残っているかららしい
# rm -fr /usr/local/pgsql/lib
などとして削除しちゃいましょう
**contrib関連のインストール [#z3453a89]
別にインストール必要はありません~
bisonが必要です
$ su postgres
$ cd /usr/local/src/postgresql-7.4.9/contrib
$ gmake all
$ gmake install
**パスの設定 [#i007af38]
postgresとPostgreSQLを使用するユーザー全ての.bashrcに以下...
PATH="$PATH":/usr/local/pgsql/bin
export POSTGRES_HOME=/usr/local/pgsql
export PGLIB=$POSTGRES_HOME/lib
export PGDATA=$POSTGRES_HOME/data
export MANPATH="$MANPATH":$POSTGRES_HOME/man
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
設定の反映
$ source ~/.bashrc
データベース初期化
$ initdb --encoding=EUC_JP --no-locale
一行追加
# vi /etc/ld.so.conf
/usr/local/pgsql/lib
# /sbin/ldconfig
**自動起動の設定 [#p075a31b]
# cp /usr/local/src/postgresql-7.4.9/contrib/start-scrip...
# chmod 755 /etc/rc.d/init.d/postgresql
# /sbin/chkconfig --add postgresql
# /etc/rc.d/init.d/postgres start
**Pg.pmのインストール [#c3d3dd44]
Pg.pmは7.3から別管理になったそうな~
PerlからPg.pmで接続する場合は以下を実行
http://gborg.postgresql.org/project/pgperl/download/downl...
Pg-2.1.1.tar.gz
# tar xvzf Pg-2.1.1.tar.gz
# cd Pg-2.1.1
# POSTGRES_HOME=/usr/local/pgsql
# export POSTGRES_HOME
# perl Makefile.PL
# make
# make install
**syslog関連設定 [#e134909b]
[[参考サイト:http://search.net-newbie.com/pgsql/runtime-c...
$ vi /usr/local/pgsql/data/postgresql.conf
log_connections = true # 接続ログを残す
log_statement = true # 全てのSQL文を記録
debug_print_parse = true # パースツリーを出力します
debug_print_rewritten = true # 書き換え後のパースツリー...
debug_print_plan = ture # 問合せプランを出力します
syslog = 2 # 出力を制御します(0:出力なし 1:syslogとstdou...
syslog_facility = 'LOCAL0'
# /etc/rc.d/init.d/postgres restart
PostgreSQLのログファイルは別に吐き出すように設定
$su
# vi /etc/syslog.conf
local0.* /var/log/postgres # 他にlocal0を使っていないか...
# ps ax | grep syslog
# kill -HUP 調べたsyslogdのPID
ログローテーション設定
# vi /etc/logrotate.d/postgres
"/var/log/postgres"
{
rotate 4
weekly
sharedscripts
postrotate
/usr/bin/killall -HUP syslogd
endscript
}
*Apacheのインストール [#tf8c8011]
http://www.apache.or.jp/
# tar xvzf apache_1.3.34.tar.gz
# cd apache_1.3.34
# OPTIM="-O2" ./configure --enable-module=so --enable-mo...
# make
# make install
Options
|FollowSymLinks|シンボリックリンクを有効|
|Indexes|ディレクトリ内丸見え|
|Includes|SSI有効|
|ExecCGI|CGI有効|
|MultiViews|ブラウザを判定(?)|
AllowOverride
|AuthConfig|認証有効|
|FileInfo|ドキュメントタイプのディレクディブ使用許可|
|Indexes|ディレクトリインデックス制御|
|Limit|ホストへのアクセス制御|
Apacheのバージョンを表示させないようにするには httpd.conf...
ServerSignature Off
ServerTokens ProductOnly
画像ファイルはログに記録しないためには httpd.conf において
<IfModule mod_setenvif.c>
# no add images log
SetEnvIf Request_URI "\.(gif)|(jpg)|(png)$" no_log
.....
CustomLog /usr/local/apache/logs/access_log combined env...
**自動起動の設定 [#g7d8ed26]
# cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/ht...
# chmod 755 /etc/rc.d/init.d/httpd
# vi /etc/rc.d/init.d/httpd
以下を追加
#!/bin/sh
# chkconfig: - 85 15
# description: Apache is a World Wide Web server. It is...
# HTML files and CGI.
# processname: httpd
# pidfile: /usr/local/apache/logs/httpd.pid
# config: /usr/local/apache/conf/httpd.conf
# /sbin/chkconfig --add httpd
# /etc/rc.d/init.d/httpd start
**ログのローテーション設定 [#ddb838ec]
# vi /etc/logrotate.d/apache
/usr/local/apache/logs/*_log
{
rotate 4
compress # ZIP圧縮する場合
weekly
sharedscripts
postrotate
/usr/local/apache/bin/apachectl restart
endscript
}
# /usr/sbin/logrotate -f /etc/logrotate.d/apache
コマンドにて /usr/local/apache/logs 内に access_log.1 err...
*PHP4のインストール [#ud9566ad]
[[PHPめも]]も参考にして下さい :D
# tar xvzf php-4.4.1.tar.gz
# cd php-4.4.1
# ./configure --with-pgsql --with-apxs=/usr/local/apache...
&color(red){--enable-mbstr-enc-trans は4.3.0以降は廃止};~
&color(red){--enable-trans-sid は4.2.0以降は常にコンパイ...
&color(red){コマンドライン版は4.3.0から常に構築される};~
&color(red){CGI版とCLI版は違うものらしいぞっ};
GDを使用する場合はこんな感じ
# ./configure \
--with-pgsql --with-apxs=/usr/local/apache/bin/apxs \
--enable-zend-multibyte --enable-mbstring --enable-mbreg...
--with-gd --with-zlib-dir=/usr --with-jpeg-dir=/usr \
--with-png-dir=/usr --with-freetype-dir=/usr --with-ttf \
--enable-gd-native-ttf --enable-gd-jis-conv
libpng, libjpeg, freetype がないと言われたら devel を入れ...
**php.iniの設定 [#babc391d]
# cp /usr/local/src/php-4.4.1/php.ini-dist /usr/local/li...
;; 出力バッファリングを有効にする
output_buffering = On
;; mb_output_handlerによる出力変換を有効にする
output_handler = mb_output_handler
;; HTTPヘッダ charset を設定
default_charset = Shift_JIS
;;日本語主体で使用
mbstring.language = Japanese
;; 内部エンコーディングをEUC-JPに設定
mbstring.internal_encoding = EUC-JP
;; HTTP入力エンコーディング変換をautoに設定
mbstring.http_input = auto
;; SJISに変換
mbstring.http_output = SJIS
mbstring.encoding_translation = On 必要?
mbstring.detect_order = auto 必要?
;; 無効な文字を出力しない
mbstring.substitute_character = none;
mbstring.func_overload = 0
;; 4.1.0から推奨
register_globals = Off
# make
# make install
**httpd.confの書き換え [#c1c1e70e]
AddType application/x-httpd-php .php
を追加してApache再起動
**CGI版をインストールする場合 [#p9bf9de7]
&color(red){4.3.0以降は不要};
# make distclean
# ./configure --with-pgsql --enable-track-vars --enable-...
# make
# make install
これで/usr/local/bin/php にバイナリがインストールされる
*ミニメモ [#g2f3b125]
PostgreSQL7.3からはホームディレクトリの .pgpass に、 デー...
#exlink
ページ名: