Web管理ツールの導入

まずはウェブ上でアクセス解析を行うwebalizerをインストールします。よく「ウェブアナライザー」って言う人がいますが綴りから見ると「ウェブアライザー」です。

◇ webalizerのインストールと設定

ダウンロード
http://www.mrunix.net/webalizer/

展開
# tar zxf webalizer-2.01-10-src.tgz

インストール

# cd /usr/local/src/webalizer-2.01-10
# ./configure
–with-language=japanese
–with-etcdir=/usr/local/etc
–with-png=/usr/local/lib
# make
# make install

## webalizerの設定

# cd /usr/local/etc/
# cp webalizer.conf.sample webalizer.conf
# vi webalizer.conf

有効にした設定内容
OutputDir /usr/local/apache/htdocs/管理ディレクトリ/webalizer
Incremental yes
HostName ホスト名

PageType htm*
PageType cgi
PageType php
PageType pl

DNSCache dns_cache.db

HideURL *.gif
HideURL *.GIF
HideURL *.jpg
HideURL *.JPG
HideURL *.png
HideURL *.PNG
HideURL *.ra

IgnoreURL /管理ディレクトリ

ユーザでcrontabに登録

# su – user
$ crontab -e
5 0 * * * シェルファイルのパス/webalizer.sh
実行スクリプトのサンプル
#!/bin/sh
/usr/local/bin/webalizer /usr/local/apache/logs/access_log.`date -v -1d +%Y-%m-%d`

# chmod 755 webalizer.sh
◇ phpMyAdminのインストール

ダウンロード
http://www.phpmyadmin.net/home_page/index.php

展開
# tar zxf phpMyAdmin-2.8.0.4.tar.gz

インストール
展開した内容をWebでアクセス可能な場所にコピー
◇ phpPgAdminのインストール

ダウンロード
http://phppgadmin.sourceforge.net/

展開
# tar zxf phpPgAdmin-4.0.1.tar.gz
インストール
展開した内容をWebでアクセス可能な場所にコピー
Apacheでアクセス制限
http.confを編集
# Basic Auth
<directory “=”” usr=”” local=”” apache=”” htdocs=”” 管理ディレクトリ=””>
AuthType Basic
AuthName “Management Zone”
AuthUserFile ディレクトリ名/.htpasswd
Require user ユーザ名

order allow,deny
allow from 許可するIPアドレス

BASIC認証パスワードを設定(新規)
# htpasswd -c ディレクトリ名/.htpasswd ユーザ名

PHP5のインストール

最小構成のFreeBSDからなのでPHP導入前にいろいろとインストールする必要があります。

◇libcurlのインストール

ダウンロード
http://curl.haxx.se/

展開
# tar zxf curl-7.15.3.tar.gz

インストール
# cd /usr/local/src/curl-7.15.3
# ./configure
# make
# make install

◇libiconvのインストール

ダウンロード
http://www.gnu.org/software/libiconv/
http://www2d.biglobe.ne.jp/~msyk/software/libiconv-1.9.1-patch.html

展開
# tar zxf libiconv-1.9.1.tar.gz

パッチ適用
# zcat libiconv-1.9.1-ja-patch-1.diff.gz | patch -p0

※私がDLしたパッチはテキストだったのでzcatでなくcat使いました。

インストール
# cd /usr/local/src/libiconv-1.9.1
# ./configure
# make
# make install
◇PHP5のインストールと設定

ダウンロード
http://www.php.net/

展開
# tar zxf php-5.1.4.tar.gz

インストール
# cd /usr/local/src/php-5.1.4
# ./configure
–enable-mbstring
–enable-mbregex
–enable-zend-multibyte
–prefix=/usr/local
–with-gd
–with-jpeg-dir=/usr/local/lib/
–with-png-dir=/usr/local/lib/
–with-zlib-dir=/usr/lib/
–with-dom
–with-curl
–enable-xslt
–with-xslt-sablot
–with-dom-xslt
–with-zlib
–with-apxs2=/usr/local/apache/bin/apxs
–with-mysql=/usr/local/mysql
–with-pgsql=/usr/local/pgsql

# make
# make install

実はこの時点でwgetが無いとかエラーが発生したが、強行してPHPの導入完了。
まだまだ足りないプログラムがあるみたいなのでそれは後でゆっくり。(makeは正常終了しているので関数が抜けているとかは無いと思う)

Apacheのmime.typesに下記を追加

application/x-httpd-php php
application/x-httpd-php-source phps

Apacheを再起動
# /usr/local/apache/bin/apachectl restart

追記:
この直後にwgetを入れてmake installさせました。その時PEAR関連でアップデータを取り込んでいました。なるほどそういうことなんですね。

◇wgetのインストール

ダウンロード
http://www.gnu.org/software/wget/

展開
# tar zxf wget-1.10.2.tar.gz

インストール
# cd /usr/local/src/wget-1.10.2
# ./configure
# make
# make install

FreeBSDにGDをインストール

PHPをインストールする前段階としてGDをインストールします。

◇libXML2のインストール(PHP5に必要)

ダウンロード
http://xmlsoft.org/

展開
# tar zxf libxml2-2.6.24.tar.gz

インストール
# cd /usr/local/src/libxml2-2.6.24
# ./configure
# make
# make install

◇jpeg-6bのインストール

ダウンロード
http://quox.org/install/graphics/jpeg-6b.html

展開
# tar zxf jpegsrc.v6b.tar.gz

インストール
# cd /usr/local/src/jpeg-6b
# ./configure –enable-shared –enable-static
# make
# make install

◇libpngのインストール

ダウンロード
http://www.libpng.org/pub/png/libpng.html

展開
# tar zxf libpng-1.2.10-no-config.tar.gz

インストール
# cd /usr/local/src/libpng-1.2.10
# cp scripts/makefile.linux Makefile
# make
# make install

◇zlibのインストール

ダウンロード
http://www.zlib.net/

展開
# tar zxf zlib-1.2.3.tar.gz

インストール
# cd /usr/local/src/zlib-1.2.3
# ./configure
# make
# make install

◇gdのインストール

ダウンロード
http://www.boutell.com/gd/

展開
# tar zxf gd-2.0.33.tar.gz

インストール
# cd /usr/local/src/gd-2.0.33
# ./configure
# make
# make install

…とうまく行くはずだが、素BSDで./configureするとどうもMakefileの作成がちょっと失敗しているのか、コンパイルオプションにjpegライブラリのパスが入ってなくてエラーになりました。orz…

で下記コマンドをmakeする前に発行することで回避

# setenv INCLUDES -I/usr/local/include

いろいろあるなぁ…