Solaris 10 でのWebサーバ起動方法

最終更新日:2005年08月25日

Solaris 10 のWeb環境


Solaris 10 には、Apache 1.3系とApache 2.0系のふたつのWebサーバが標準で提供されている。

1.3系と2.0系の比較

標準で提供されている環境の比較を以下に示す
項目 1.3系 2.0系 備考
バージョン情報 Apache/1.3.33 (Unix) mod_perl/1.29 Apache/2.0.52 (Unix) DAV/2 レスポンスのServerヘッダ情報
サービス管理 rcスクリプト(/etc/init.d/apache) SMF(svc:/network/http:apache2)
confファイル /etc/apache/httpd.conf /etc/apache2/httpd.conf 標準では存在しないので、httpd.conf-example をコピーして使用
※ 両サーバとも初期設定では、80, 443 ポートを使用するようになっているので、同時に使用する場合は設定を変更する必要がある。

1.3系の管理

confファイル作成

/etc/apache/httpd.conf-example をコピーし、必要に応じて設定を変更して使用する。
# cd /etc/apache
# cp httpd.conf-example httpd.conf
※ /etc/apache/httpd.conf が存在するとブート時にApache 1.3系が自動的に起動する。ブート時に自動起動させたくない場合は、httpd.conf の名前を変えておく。

起動

# /etc/init.d/apache start

停止

# /etc/init.d/apache stop

再起動

# /etc/init.d/apache restart

https(SSL)の起動

# /etc/init.d/apache startssl
※ 事前にSSLの準備が必要

2.0系の管理

confファイル作成

/etc/apache2/httpd.conf-example をコピーし、必要に応じて設定を変更して使用する。
# cd /etc/apache2
# cp httpd.conf-example httpd.conf

起動

# svcadm enable apache2

停止

# svcadm disable apache2

再起動

# svcadm restart apache2

設定の再読み込み

# svcadm refresh apache2

https(SSL)の起動

https(SSL)の起動条件確認
# svcprop -p httpd/ssl svc:/network/http:apache2
false
デフォルトでは起動しないようになっている。

svccfgコマンドのeditpropサブコマンドで設定を変更する。
# svccfg
svc:> select apache2
svc:/network/http:apache2> editprop

(EDITOR環境変数で指定したエディタ画面)
==================================================
select svc:/network/http:apache2

# Property group "httpd"
# delprop httpd
# addpg httpd application
setprop httpd/ssl = boolean: (true)     ← この行のコメントを外し"false"を"true"に変更
# setprop httpd/stability = astring: (Evolving)
   .
   .
   .
==================================================

svc:/network/http:apache2> quit
設定の再読み込みを実施後、設定内容を確認
# svcadm refresh apache2
# svcprop -p httpd/ssl svc:/network/http:apache2
true
httpd/sslの値が"true"になっている事が分かる。
apache2を再起動すればhttps(SSL)が使用可能になる。

但し、https(SSL)を使用するには、事前に証明書などの準備が必要になる。
証明書を準備しないでapache2を起動しようとすると、以下のメッセージが /var/svc/log/network-http:apache2.log に出力されてapache2が起動しない。
Syntax error on line 112 of /etc/apache2/ssl.conf:
SSLCertificateFile: file '/etc/apache2/ssl.crt/server.crt' does not exist or is empty
[  8月 11 21:11:46 Method "start" exited with status 1 ]
この時点で状態を確認すると"maintenance"になっている。
# svcs -l apache2
fmri         svc:/network/http:apache2
name         Apache 2 HTTP server
有効         true
状態         maintenance
   .
   .
   .

※ SMFでのサービス管理方法は『Solaris 10 のサービス管理方法』参照。