目の前に僕らの道がある

勉強会とか、技術的にはまったことのメモ

Solaris10にspache2.2を入れてみた

自分メモということで。

環境変数

一応こんな感じになってます。

# env
SHELL=/bin/bash
TERM=xterm
LD_LIBRARY_PATH=/usr/local/lib:/usr/sfw/lib:/usr/lib:/lib:/etc/lib
PATH=/usr/local/bin:/usr/sfw/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/usr/ucb:/usr/ccs/bin:.
EDITOR=vi
LANG=ja_JP.UTF-8
TZ=Japan
CC=gcc

apache2.0の停止

apache2.0が動いたままになっているのでとりあえず停止します。

# svcadm -v disable apache2
svc:/network/http:apache2 が無効になりました

# svcs -l apache2
fmri         svc:/network/http:apache2
name         Apache 2 HTTP server
有効         false
状態         disabled
next_state   none
state_time   2009年10月07日 20時36分38秒
logfile      /var/svc/log/network-http:apache2.log
リスタータ   svc:/system/svc/restarter:default
contract_id  
dependency   require_all/error svc:/milestone/network:default (online)
dependency   require_all/none svc:/system/filesystem/local:default (online)
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)

ダウンロード

# wget http://ftp.riken.jp/net/apache/httpd/httpd-2.2.13.tar.gz
# gunzip -c httpd-2.2.13.tar.gz  | tar xvf -

インストール

configureのオプションに関してはよく分かっていなかったりします。この場合、/usr/local/apache2にインストールされます。

# cd httpd-2.2.13
# ./configure --enable-so --enable-ssl

# make

# make install 

試験動作

/usr/local/apache2/conf/httpd.confにServerNameが設定されていないのでエラーが出ていますが、とりあえず動いています。

# /usr/local/apache2/bin/apachectl start
httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.1.81 for ServerName
httpd (pid 24454) already running
# /usr/local/apache2/bin/apachectl stop
httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.1.81 for ServerName

サービスの設定

デフォルトでインストールされているapache2.0の設定が残っているので修正します。

# cp /var/svc/manifest/network/http-apache2.xml /var/svc/manifest/network/http-apache2.xml.org
# vi /var/svc/manifest/network/http-apache2.xml
                                manpath='/usr/apache2/man' />

                                manpath='/usr/local/apache2/man' />
# cp /lib/svc/method/http-apache2 /lib/svc/method/http-apache2.org
# vi /lib/svc/method/http-apache2
APACHE_HOME=/usr/apache2
CONF_FILE=/etc/apache2/httpd.conf

APACHE_HOME=/usr/local/apache2
CONF_FILE=/usr/local/apache2/httpd.conf

設定をSMFに反映させて、apache2.2を起動すれば完了です。

# svccfg delete -f apache2
# svccfg import /var/svc/manifest/network/http-apache2.xml

# svcadm -v enable apache2
svc:/network/http:apache2 が有効になりました。

単純に動かすだけなら、これで終わりです。いろんな場所を参考にしながらやったのでホントにこれであっているかは不安です。