フリーソフト/apache-2.2.12+PHP-5.3.0(Solaris10)

フリーソフトウェアのコンパイル

環境

PATH=/usr/bin:/usr/sbin:/usr/sfw/bin:/usr/local/bin:/usr/ccs/bin:.
LD_LIBRARY_PATH=/opt/local/lib:/usr/local/lib:/usr/sfw/lib
LD_RUN_PATH={LD_LIBRARY_PATH}
export PATH
export LD_LIBRARY_PATH
export LD_RUN_PATH

Apache 2.2.16

バージョンは

Cryptographic Framework

また,Cryptographic Framework については, Sun Bingadmin

http://www.sun.com/bigadmin/motd/042006.html

から crypto framework で検索して出てくる文書 「The Solaris Cryptographic Framework」(pdf)を参照.

あと,こちら. Sun/Solaris10/Cryptgraphic Framework

/usr/sfw/lib/libcrypto.so や /usr/sfw/lib/libssl.so を リンクに使う.

コンパイル/インストール

$ CFLAGS='-DSSL_ENGINE' \
> ./configure --prefix=/opt/apache --enable-so \
> --enable-mods-shared="all proxy" \
> --enable-ssl --with-mpm=prefork --with-z=/usr \
> --enable-rule=SSL_EXPERIMENTAL \
> --with-ssl=/usr/sfw \
> --enable-authnz-ldap --with-ldap --enable-ldap
$ make
# make install

ssl.conf

Apache のssl.conf 内で

SSLCryptoDevice pkcs11

という行を加えておく. (ただし,T5120-apache 2.2.16 の組み合わせでこれを有効にすると, CGI がうまく実行できないという現象に遭遇した. 原因不明)

あと,SSLCipherSuite の設定を次のようにするべし.

SSLCipherSuite ALL:!ADH:!EXPORT56:-AES256-SHA:-DHE-RSA-AES256-SHA:
-DHE-DSS-AES256-SHA:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
(実際は 1行)

また,Solaris10 8/07 ぐらい以降, もしくはこの時期以降のパッチをあてた Solaris10 では, openssl が入れ替わっているせいか, ssl.conf 内の

<VirtualHost _default_:443>

の行を

<VirtualHost *:443>

としないと core dump する. (記述が厳しくなったってことか)

SMF

既にOS標準の apache が SMF で管理されているので,これを修正する.

# cp -p /var/svc/manifest/network/http-apache2.xml \
        /var/svc/manifest/network/http-apache22.xml
# vi /var/svc/manifest/network/http-apache22.xml
インスタンス名を apache2 から apache22 へ変更する
また,method も /lib/svc/method/http-apache2 から
/lib/svc/method/http-apache22 に変更する.
# svccfg import /var/svc/manifest/network/http-apache22.xml
# cp -p /lib/svc/method/http-apache2 /lib/svc/method/http-apache22
# vi /http-apache2.patch
---
--- /lib/svc/method/http-apache2.OSORG	Sat Jan  8 17:51:58 2005
+++ /lib/svc/method/http-apache2	Fri Jul 29 18:22:03 2005
@@ -8,9 +8,9 @@

. /lib/svc/share/smf_include.sh

-APACHE_HOME=/usr/apache2
-CONF_FILE=/etc/apache2/httpd.conf
-PIDFILE=/var/run/apache2/httpd.pid
+APACHE_HOME=/usr/local/apache2
+CONF_FILE=/usr/local/apache2/conf/httpd.conf
+PIDFILE=/usr/local/apache2/logs/httpd.pid

[ ! -f ${CONF_FILE} ] &&  exit $SMF_EXIT_ERR_CONFIG
 
@@ -17,10 +17,11 @@
case "$1" in
start)
	/bin/rm -f ${PIDFILE}
!#       ssl=`svcprop -p httpd/ssl svc:/network/http:apache22`
!#       if [ "$ssl" = false ]; then
!#               cmd="start"
!#       else
!#               cmd="start"
!#       fi
+       cmd="start"

---

なお,apache 2.2 からは startssl オプションは無くなった

PHP に必要なもろもろ

UW-IMAP 2007e の c-client のヘッダとライブラリ(アップデート時は必要なし)

PHP 5.2.0 以降は UW-IMAP 2006 以降が必要らしい.

% cd imap-2007e
% vi src/osdep/unix/Makefile

SSLDIR=/usr/sfw
SSLCERTS=/etc/sfw/openssl/certs
SSLKEYS=/etc/sfw/openssl/private
SSLINCLUDE=$(SSLDIR)/include
SSLLIB=$(SSLDIR)/lib

と変更する.

もう一カ所

GCCCFLAGS= -g $(GCCOPTLEVEL) -pipe -fno-omit-frame-pointer

の行を

GCCCFLAGS= -g $(GCCOPTLEVEL) -pipe -fno-omit-frame-pointer -fPIC

とする(最後に -fPIC を加える)

% make gso
# cp c-client/c-client.a /opt/local/lib/libc-client.a
# cp c-client/*.h /opt/local/include/

gnu gettext 0.18.1.1

% cd gettext-0.18.1.1
#   % ./configure --prefix=/opt/local
% ./configure --prefix=/opt/local
% make
# make install

libmcrypt-2.5.8

% cd libmcrypt-2.5.8
% ./configure --prefix=/opt/local  --enable-ltdl-install
% make
# make install

PHP 5.2.12

% cd php-5.2.4
% ./configure --prefix=/opt/local --with-apxs2=/opt/apache/bin/apxs \
  --enable-mbstring --enable-mbregex \
  --with-openssl=/usr/sfw \
  --with-imap=/opt/local --with-imap-ssl=/opt/local \
  --with-zlib \
  --with-gettext=/opt/local \
  --with-libxml-dir \
  --with-mcrypt=/opt/local \
  --with-mysql=/usr/sfw
% make
# make install
# cp php.ini-recommended /usr/local/lib/php/php.ini

PEAR モジュール

Mail

# pear install --alldeps Mail

以下のものがインストールされる

Log

  # pear install Log

以下のものがインストールされる

DB

  # pear install DB

以下のものがインストールされる

Mail_Mime

  # pear install Mail_Mime

以下のものがインストールされる

Zend Optimizer

ZendOptimizer-3.3.0a-sunos5.8-sparc.tar.gz インストール場所を

/opt/Zend

とする.


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-09-23 (木) 09:56:06