Apache2.2.8のインストール

# OPTIM="-O2" ./configure \
  --enable-cache --enable-disk-cache \
  --enable-mem-cache --enable-proxy --enable-proxy-balancer \
  --enable-ssl --enable-rewrite --enable-dav

※すべてのモジュールを有効にする場合は

# OPTIM="-O2" ./configure --enable-mods-shared=all

※SSLが導入されてない場合は、下記エラーになります。

configure: error: ...No recognized SSL/TLS toolkit detected

この場合は、OpenSSLを導入します。 ※導入方法はOpenSSLの導入を参照
 (ソースから導入した場合は、--with-ssl=/usr/local/ssl をconfigureオプションに追加して下さい)

Apacheのコンパイル&インストール

# make
# make install

PHPでGDを使用する場合は、freetype,libpng,libjpeg,gd をインストールする。

freetypeのインストール

# cd freetype-2.3.5/
# ./configure
# make
# make install

libpngのインストール

# cd libpng-1.2.25/
# ./configure
# make
# make install

※configure時に、

checking for zlibVersion in -lz... no
configure: error: zlib not installed

上記のように表示された場合は、zlib-develをインストールして下さい。

# yum install zlib-devel

libjpegのインストール

# cd jpeg-6b
# ./configure
# make install-lib
# ranlib /usr/local/lib/libjpeg.a

GDのインストール

# cd gd-2.0.35
# ./configure --with-freetype=/usr/local
# make
# make install
** Configuration summary for gd 2.0.34:
   Support for PNG library:          yes
   Support for JPEG library:         yes
   Support for Freetype 2.x library: yes
   Support for Fontconfig library:   no
   Support for Xpm library:          no
   Support for pthreads:             yes

※GDのコンパイル時に下記のようなエラーが出たら、gettext,gettext-develを入れる必要がある。

configure.ac:64: error: possibly undefined macro: AM_ICONV
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
make: *** [configure] Error 1

gettext,gettext-develのインストール

# yum install gettext gettext-devel
=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 gettext-devel           i386       0.14.6-4.el5     base              1.0 M
Installing for dependencies:
 cvs                     i386       1.11.22-5.el5    base              733 k
 libXtst                 i386       1.0.1-3.1        base               15 k
 libgcj                  i386       4.1.2-14.el5     base               17 M
 zip                     i386       2.31-1.2.2       base              126 k
Installed: gettext-devel.i386 0:0.14.6-4.el5
Dependency Installed: cvs.i386 0:1.11.22-5.el5 libXtst.i386 0:1.0.1-3.1   libgcj.i386 0:4.1.2-14.el5 zip.i386 0:2.31-1.2.2
Complete!

※m4が入ってなくて、GDのコンパイル時にエラーになる場合はm4をインストールする。

# yum install m4

PHP5のインストール

# cd php-5.2.5
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs \
  --enable-mbstring --with-mysql --with-pgsql=/usr/local/pgsql \
  --enable-ftp --with-zlib --enable-libxml --enable-dom \
  --with-pear --enable-simplexml --with-gd \
  --with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib \
  --with-freetype-dir=/usr/local/lib --enable-gd-native-ttf

※ディレクトリの指定は環境に応じて設定して下さい。

checking for xml2-config path...
configure: error: xml2-config not found. Please check your libxml2 installation.

上記のように表示され中断した場合は、libxml2-develをインストールします。

# yum install libxml2-devel

debianは

# apt-get install libxml2-dev


make & install

# make
# make install
...
Installing PHP SAPI module:       apache2handler
/usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apache2/build/libtool' libphp5.la /usr/local/apache2/modules
/usr/local/apache2/build/libtool --mode=install cp libphp5.la /usr/local/apache2/modules/
cp .libs/libphp5.so /usr/local/apache2/modules/libphp5.so
cp .libs/libphp5.lai /usr/local/apache2/modules/libphp5.la
libtool: install: warning: remember to run `libtool --finish /usr/local/src/php-5.2.13/libs'
chmod 755 /usr/local/apache2/modules/libphp5.so
[activating module `php5' in /usr/local/apache2/conf/httpd.conf]
Installing PHP CLI binary:        /usr/local/bin/
Installing PHP CLI man page:      /usr/local/man/man1/
Installing build environment:     /usr/local/lib/php/build/
Installing header files:          /usr/local/include/php/
Installing helper programs:       /usr/local/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/lib/php/
[PEAR] Archive_Tar    - installed: 1.3.3
[PEAR] Console_Getopt - installed: 1.2.3
[PEAR] Structures_Graph- installed: 1.0.2
[PEAR] XML_Util       - installed: 1.2.1
[PEAR] PEAR           - installed: 1.9.0
Wrote PEAR system config file at: /usr/local/etc/pear.conf
You may want to add: /usr/local/lib/php to your php.ini include_path
Installing PDO headers:          /usr/local/include/php/ext/pdo/

libphp5.soをapacheのディレクトリにコピーする

# cp libs/libphp5.so /usr/local/apache2/modules/

extra/mime.typesに下記1行を追加します。

application/x-httpd-php     php


参考

  • apacheを再起動させようとして以下のようなエラーが出た場合
    cannot restore segment prot after reloc: Permission denied
    これは、SELinuxがセキュリティーの問題でライブラリをロード出来ないようにしてあるために起こる。以下のコマンドをライブラリの情報を変更すればうまくいく。
    # chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache2/modules/libphp5.so
    context of /usr/local/apache2/modules/libphp5.so changed to system_u:object_r:textrel_shlib_t
  • Rewriteモジュールを使用する場合の設定
    コンパイルオプション
    ./configure --enable-so --enable-rewrite --enable-proxy
    httpd.confにLoadModule?の追加
    LoadModule rewrite_module modules/mod_rewrite.so
    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_http_module modules/mod_proxy_http.so


    ※自動起動の設定は、Apache2.2自動起動を参照

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-08-10 (火) 00:00:00 (3354d)