Sun Web Stack Getting Started Guide Japanese

English | 日本語

Sun Web Stack 入門ガイド


Sun Web Stack Getting Started Guide を個人的に katakai が訳したもので現在ドラフトです。現在以下のドキュメントが日本語に翻訳されています:

翻訳の間違い等ありましたらお知らせください。

                         目次


Sun Web Stack 入門ガイド

Sun Web Stack


Sun Web Stack ソフトウェアは Solaris 10 OS, OpenSolaris OS, および Red Hat Enterprise Linux (RHEL) などのさまざまなプラットフォームにバンドルし利用できるようにしたオープンソースサーバーとインタプリタのコレクションです。

Sun Web Stack ソフトウェアをダウンロードし Sun Web Stack インストールおよび構成ガイド(日本語) のインストールと設定方法の情報を参照してください。

Sun Web Stack ソフトウェアは以下のプラットフォームでサポートされています:

  1. Solaris 10 OS (Update 5 以降)
  2. OpenSolaris 2008.11 OS
  3. Linux (Red Hat Enterprise Linux (RHEL) 5 Update 2 以降 (32 ビットおよび64 ビットカーネル))。x86 プラットフォームのみサポートされています。

    このドキュメントでは Solaris 10 OS と Red Hat Enterprise Linux プラットフォームについて説明します。OpenSolaris 2008.11 OS での Sun Web Stack ソフトウェアの使用については OpenSolaris 2008.11 Web Stack 入門ガイド を参照してください。

    このドキュメントではサポートされるプラットフォームに ソフトウェアをインストール、設定 した後、どのように Sun Web Stack ソフトウェアを使用するかの情報を提供します。

Sun Web Stack ソフトウェアは次のコンポーネントを含んでいます:

  1. サーバーソフトウェア - Apache Web Server, Apache Tomcat, Squid Proxy Server, lighttpd
  2. データベースソフトウェア - MySQL Server
  3. プログラミング環境 - PHP, Perl, Ruby, および Python
  4. キャッシングソフトウェア - Memcached

RHEL では Ruby および Python は Sun Web Stack ソフトウェアとしては提供されていません。Red Hat プラットフォームで提供されているものを使う必要があります。

Sun Web Stack ソフトウェアの取得


Sun Web Stack バイナリパッケージはサポートされるすべてのプラットフォームで利用できます。サポートされるプラットフォームは前の節を参照してください。

Sun Web Stack ソフトウェアのインストールや設定に関する詳細は以下のドキュメントを参照してください:

Sun Web Stack ソフトウェアで利用可能なパッケージ

以下の表では Solaris 10 で利用可能なすべてのパッケージのリストを示しています:

コンポーネント名 パッケージ名
Apache HTTP Server 2.2.9 sun-apache22
mod_dtrace 0.3.1 sun-apache22-dtrace
mod_fcgid 2.2 sun-apache22-fcgid
mod_jk 1.2.25 sun-apache22-jk
mod_perl 2.0.2 sun-apache22-perl
- -
lighttpd 1.4.19 sun-lighttpd14
memcached 1.2.5 sun-memcached
- -
MySQL 5.0.67 sun-mysql50
Regression tests for MySQL sun-mysql50test
- -
PHP 5.2.6 sun-php52
APC 拡張機能 sun-php52-apc
IDN 拡張機能 sun-php52-idn
Memcache 拡張機能 sun-php52-memcache
Suhosin 拡張機能 sun-php52-suhosin
TCPWrap 拡張機能 sun-php52-tcpwrap
XDebug 拡張機能 sun-php52-xdebug
DTrace 拡張機能 sun-php52-dtrace
- -
Python 2.5.2 sun-python25
Ruby 1.8.6 sun-ruby18
Squid 2.6.STABLE17 sun-squid
Apache Tomcat 5.5.27 sun-tomcat5
サポートライブラリと登録ツール sun-wsbase

インストールには個々のパッケージでも全体のスタックでも Sun Web Stack のインストーラを使ってください。

Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

以下の表では RHEL で利用可能なすべてのパッケージのリストを示しています:

Apache HTTP Server 2.2.9 sun-apache22
mod_fcgid 2.2 sun-apache22-fcgid
mod_jk 1.2.25 sun-apache22-jk
mod_perl sun-apache22-perl
- -
lighttpd 1.4.19 sun-lighttpd14
memcached 1.2.5 sun-memcached
- -
MySQL 5.0.67 sun-mysql50
Regression tests for MySQL sun-mysql50test
- -
PHP 5.2.6 sun-php52
APC 拡張機能 sun-php52-apc
IDN 拡張機能 sun-php52-idn
Memcache 拡張機能 sun-php52-memcache
Suhosin 拡張機能 sun-php52-suhosin
TCPWrap 拡張機能 sun-php52-tcpwrap
XDebug 拡張機能 sun-php52-xdebug
- -
Squid 2.6.STABLE17 sun-squid
Apache Tomcat 5.5.27 sun-tomcat5
サポートライブラリと登録ツール sun-wsbase

個々のパッケージのインストールも全体のスタックのインストールも Sun Web Stack インストーラを使ってください。

以下は RHEL では*サポートされていない*リストです:

  1. Ruby サポート (OS が提供している Ruby インタプリタを使用してください)
  2. Python サポート (OS が提供している Python インタプリタを使用してください)
  3. Apache の mod_dtrace プラグインモジュール (Linux には DTrace のサポートはありません)
  4. PHP の Dtrace 拡張機能 (Linux には DTrace のサポートはありません)

Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

すべての Sun Web Stack バンドルのインストール


インストールについては Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

環境を設定する

Sun Web Stack パッケージを amp インストールオプションでインストールした場合は、Sun Web Stack ソフトウェアは RHEL の場合は /opt/sun/webstack に、Solaris 10 OS の場合は /opt/webstack 以下にあります。

ファイルのレイアウトに関する詳細は Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

Sun Web Stack ソフトウェアの Apache 2.2.9 Web Server サーバーは PHP 配備環境に構成され最適化されています。NetBeans IDE では Apache Web Server をサーバーリストに追加できます。そこから PHP ベースのアプリケーションを Apache Web Server に配備できます。Apache Web Server を NetBeans で設定するには後で説明します。

Solaris 10 OS で Apache Web Server を起動するには次のコマンドを実行します:

/usr/sbin/svcadm enable sun-apache22

このコマンドを実行するためには必要な権限を有している必要があります。


このコマンドは Apache Web Server を 32 ビットプレワーク MPM モード(デフォルトモード)で実行します。他のモードで起動するには以下の例を参照してください。

Red Hat Enterprise Linux で Apache Web Server を起動するには次のコマンドを実行します:

/sbin/service sun-apache22 start

または

/etc/init.d/sun-apache22 start

Solaris 10 OS でサービスの管理に SMF を使用する

Apache Web Server の SMF プロパティーを以下の表に示します:

SMF プロパティー名
httpd/server_type prefork (デフォルト) または worker
httpd/enable_64bit true または false(デフォルト)
httpd/startup_options valid apachectl オプション

Solaris 10 での SMF の例を以下に示します:

  1. SMF プロパティーを表示する
    $ svccfg -s sun-apache22 listprop httpd/*
    
  2. 32 ビット prework サーバーを実行する
    $ svccfg -s sun-apache22 setprop httpd/server_type=prefork
    $ svcadm refresh sun-apache22
    $ svcadm enable sun-apache22
    
  3. 64 ビット prework サーバーを起動する
    $ svccfg -s sun-apache22 setprop httpd/enable_64bit=true
    $ svccfg -s sun-apache22 setprop httpd/server_type=prefork
    $ svcadm refresh sun-apache22
    $ svcadm enable sun-apache22
    
  4. 32 ビット worker サーバーを実行する
    $ svccfg -s sun-apache22 setprop httpd/server_type=worker
    $ svcadm refresh sun-apache22
    $ svcadm enable sun-apache22
    
  5. 64 ビット worker サーバーを実行する
    $ svccfg -s sun-apache22 setprop httpd/enable_64bit=true
    $ svccfg -s sun-apache22 setprop httpd/server_type=worker
    $ svcadm refresh sun-apache22
    $ svcadm enable sun-apache22
    

同様に Squid Proxy, memcached, lighttpd サーバーも SMF を使用し管理できます。

Solaris 10 OS で Squid Proxy Server を起動するには:

$ svcadm enable sun-squid

Solaris 10 OS で memcached Server を起動するには:

$ svcadm enable sun-memcached


Solaris 10 OS で lighttpd Server を起動するには:

$ svcadm enable sun-lighttpd14

Apache Web Server のインストール場所

以下の表に Sun Web Stack のファイルがインストールされる場所を示します:

プラットフォーム インストール場所
Solaris 10 OS /opt/webstack/apache2/2.2/
RedHat Enterprise Linux /opt/sun/webstack/apache2/2.2/

MySQL データベースサーバーの設定

MySQL サーバーはもっとも使用されているリレーショナルデータベースであり、Sun Web Stack ソフトウェアでも利用可能です。amp 構成でインストールした場合 MySQL データベースもインストールされます。以下のように完全な amp 設定をインストールできます:

$ ./install amp

または MySQL データベースのみインストールするには:

$ ./install mysql

動作させるにはインストール後に MySQL DB を設定する必要があります。詳細は Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

MySQL DB のインストール場所

以下の表に Sun Web Stack のファイルがインストールされる場所を示します:

プラットフォーム インストール場所
Solaris 10 OS /opt/webstack/mysql/5.0
RedHat Linux Enterprise Linux /opt/sun/webstack/mysql/5.0

Solaris 10 で MySQL サーバーを起動するには以下のコマンドを実行します:

/usr/sbin/svcadm enable sun-mysql50

このコマンドを実行するためには必要な権限を有している必要があります。

Red Hat Enterprise Linux で Apache Web Server を起動するには以下のコマンドを実行します:

/sbin/service sun-mysql50 start

または

/etc/init.d/sun-mysql50 start

その他の MySQL サーバーの情報

MySQL サーバーの root ユーザーのデフォルトパスワードは空白文字(パスワードなし)です。MySQL サーバー起動した後、次のコマンドを使って MySQL に接続できます:

Solaris 10 OS:

/opt/webstack/mysql/5.0/bin/mysql -u root

RHEL OS:

/opt/sun/webstack/mysql/5.0/bin/mysql -u root

root のパスワードを変更するには以下を実行します:

Solaris 10 OS:

/opt/webstack/mysql/5.0/bin/mysqladmin -u root password {{<新しいパスワード>}}

RHEL OS:

/opt/sun/webstack/mysql/5.0/bin/mysqladmin -u root password {{<新しいパスワード>}}
警告
MySQL サーバーのでフォルト root パスワードは本番稼働環境に配備するまでには変更してください。

サーバーの自動起動

Solaris 10 OS では sun-apache22 サービスを有効にすると Apache Web Server は自動的に起動します。

RHEL では /etc/init.d 以下の起動スクリプト sun-apache22 から起動します。マシンの起動時に自動的に起動するには chkconfig 機構を使ってください。

RHEL でマシンの起動時に Apache Web Server を自動起動するには以下のコマンドを実行してください:

$ /sbin/chkconfig sun-apache22 on

RHEL でマシンの起動時に MySQL データベース を自動起動するには以下のコマンドを実行してください:

$ /sbin/chkconfig sun-mysql50 on

RHEL の chkconfig コマンドはブート時に起動を有効にする機能のみ確保します。Apache Web Server および MySQL を起動/停止するには service コマンドを使う必要があります。

例えば

$ sudo service sun-apache22 start

RHEL でマシンの起動時に Tomcat Server を起動するには /etc/init.d/sun-tomcat5 start の行を /etc/rc.d/rc.local ファイルの最後に追加してください。Squid Proxy Server を起動するには /etc/init.d/sun-squid start の行を /etc/rc.d/rc.local ファイルの最後に追加してください。


MySQL サーバーのデフォルトインストールでは my.cnf ファイルを /etc/opt/webstack/mysql/5.0 (RHEL) または /etc/opt/sun/webstack/mysql/5.0 (Solaris 10 OS) 以下に作成します。デフォルトの設定は非常に小規模の配備用です。サンプルの構成が mysql/5.0/my-*.cnf 以下にあり、中規模、大規模の配備用に使用できます。このうち一つを MySQL サービスの起動前に my.cnf にコピーします。

セキュア Web サイトの設定

Web サイトのセットアップのための基本的な Apache サーバーの設定方法を紹介しました。ここでは https 経由の Web リクエストを処理するセキュア Web サイトを設定します。Apache Web Server の mod_sslhttps をサポートします。

SSL をサーバーで設定するには以下のタスクを実行します:

  1. 証明書を生成します
  2. Apache 設定ファイルを変更します

証明書の生成

この例では自己署名(self-signed)のテスト証明書を生成します。この証明書は認証機関 (CA) で署名されていないためブラウザが trust に設定されている場合は使うことができません。

実稼働のセキュアサーバーを設定する場合には、Verisign などの会社に証明書を署名してもらうようにお金を払うことができます。


証明書はサーバーごとでそのサイトの名前を含むため、一つのセキュア Web サーバーは一つのマシンでのみ実行できます(IP 別名が設定されていない場合)。ただしサーバーはセキュアおよび非セキュア接続両方で動作させることができます。

Solaris 10 OS ではシェルから以下を実行します:

$ /usr/sfw/bin/openssl req -new -x509 -nodes -out server.crt -keyout server.key

RHEL ではシェルから以下を実行します:

$ /usr/bin/openssl req -new -x509 -nodes -out server.crt -keyout server.key

証明書の属性を入力するように質問されます。詳細は http://sial.org/howto/openssl/self-signed/ を参照してください。

openssl ユーティリティは Solaris 10 OS や RHEL でデフォルトで利用可能です。

このコマンドは2つのファイルを生成します:

  1. server.crt - SSL 証明書ファイル
  2. server.key - SSL キーファイル

ssl.conf を Solaris 10 OS で変更する

Solaris 10 OS ではサンプルの ssl.conf ファイルが /etc/opt/webstack/apache2/2.2/samples-conf.d にあります。

このファイルを /etc/opt/webstack/apache2/2.2/conf.d に移動します:

$ sudo cp /etc/opt/webstack/apache2/2.2/samples-conf.d/ssl.conf /etc/opt/webstack/apache2/2.2/conf.d/ssl.conf

/etc/opt/webstack/apache2/2.2/conf.d/ssl.conf ファイルを編集しこれらのパラメータ値を変更します:

...
SSLCertificateFile "<server.crt へのパス>"
SSLCertificateKeyFile "<server.key へのパス>"
...

設定ファイルは /etc/opt/webstack/apache2/2.2/conf.d から自動的に読み込まれます。このため /etc/opt/webstack/apache2/2.2/httpd.conf には以下の行があります:

...
Include /etc/opt/webstack/apache2/2.2/conf.d/*.conf
...

変更内容を有効にするには Apache Web Server を再起動します。

/usr/sbin/svcadm restart sun-apache22

ssl.conf を RHEL で変更する

RHEL ではサンプルの ssl.conf ファイルは /etc/opt/sun/webstack/apache2/2.2/samples-conf.d にあります。

このファイルを /etc/opt/sun/webstack/apache2/2.2/conf.d に移動します:

$ sudo cp /etc/opt/sun/webstack/apache2/2.2/samples-conf.d/ssl.conf /etc/opt/sun/webstack/apache2/2.2/conf.d/ssl.conf

/etc/opt/sun/webstack/apache2/2.2/conf.d/ssl.conf ファイルを編集しこれらのパラメータ値を変更します:

...
SSLCertificateFile "<server.crt へのパス>"
SSLCertificateKeyFile "<server.key へのパス>"
...

設定ファイルは /etc/opt/sun/webstack/apache2/2.2/conf.d から自動的に読み込まれます。このため /etc/opt/sun/webstack/apache2/2.2/httpd.conf には次の行があります:

...
Include /etc/opt/sun/webstack/apache2/2.2/conf.d/*.conf

...

変更内容を有効にするには Apache Web Server を再起動します。

sudo /etc/init.d/sun-apache22 restart

Web ブラウザから https://localhost にアクセスします。いくつかのブラウザでは証明書が不正であると表示されることがあります。例外として追加しセキュア接続のテストを継続します。

  • Solaris 10 OS では Apache 設定ファイルは /etc/opt/webstack/apache2/2.2/conf.d にあります
  • Red Hat Enterprise Linux では Apache 設定ファイルは /etc/opt/sun/webstack/apache2/2.2/conf.d にあります

Proxy Server の設定

Sun Web Stack ソフトウェアでは Squid Proxy Server はプロキシサーバーと Web キャッシュデーモンが利用可能です。Squid Proxy Server は繰り返しのリクエストをキャッシングすることにより主に Web サーバーの高速化に使われます。

Squid Proxy Server は二通りの使用方法があります:

  1. Squid Proxy Server は ノーマルモード として動作させることができます。これは制限された個数のクライアントに対して無制限の Web サーバーのコンテンツをキャッシュします。
  2. Squid Proxy Server は リバースプロキシモード (Web サーバーアクセラレーション) として動作させることができます。これは制限された個数のサーバーで無制限のクライアントに対してキャッシュを提供します。

例えばサイトが重い負荷がかかった場合は追加のハードウェアを購入する前に以下を試してみることができます:

  1. アプリケーションが memcached を使うように設定します。
  2. Web サーバーに Squid Proxy Server のようなキャッシングサーバーを設定します。

Squid-Apache Web Server の設定の一例です:

  1. Apache Web Server をポート 8080 で実行
  2. Squid Proxy Server をポート 80 で実行
  3. ポート 80 でクライアントからのリクエストを受け取ると Squid Proxy Server は最初に以前にリクエストがあったかどうかチェックします。もしあれば Apache サーバーはサーバーの負荷を軽減するために Web サーバーに接続しません。

RHEL での Squid Proxy Server を設定

次の例では Squid Proxy Server で www.foo.com サイトで設定する方法を説明します。

  1. /etc/opt/sun/webstack/squid ディレクトリに移動します。
  2. squid.conf ファイルをテキストエディタで開きます。Web サイトのポート番号を指定します。また Web サーバーの IP アドレスを指定します。でフォルトでは Squid Proxy Server は HTTP ポート 80 を使用します。またこの Web サイトのアクセス制御を指定します。
    http_port 80 accel defaultsite=www.foo.com
    cache_peer ip.of.server1 parent 80 0 no-query
    acl sites_server_1 dstdomain www.foo.com
    http_access allow sites_server_1
    
  3. 以下のコマンドを入力しキャッシュディレクトリを作成します。
    $ /opt/sun/webstack/squid/sbin/squid -z
    
  4. 以下のコマンドを入力し Squid Proxy Server を起動します。
    $ /opt/sun/webstack/squid/sbin/squid -NCd1
    

RHEL では次のように Squid Proxy Server を起動できます:

sudo /etc/init.d/sun-squid start

Squid Proxy Server の設定でエラーが発生した場合は /var/opt/sun/webstack/squid/logs のログ(特に cache.log ファイル) を参照してください。

RHEL で Squid Proxy Server をロードバランサとして設定する

ロードバランサとして設定する前に Squid Proxy Server を再起動します。

この例では二つの Web サーバーを使用しています。それぞれの Web サーバーは二つの Web サイトを持っています。www.foo.comwww.foo.net がサーバー 1 に、www.test.foo.comwww.test.foo.net がサーバー 2 にあります。この例ではそれぞれのサイトで Squid Proxy Server をロードバランサとして設定する方法を説明します。

  1. /etc/opt/sun/webstack/squid ディレクトリに移動します。
  2. squid.conf ファイルをテキストエディタで開き以下のように変更します。
    cache_peer ip.of.server1 parent 80 0 no-query originserver name=server_1
    acl sites_server_1 dstdomain www.foo.com www.foo.net
    cache_peer_access server_1 allow sites_server_1
    
    cache_peer ip.of.server2 parent 80 0 no-query originserver name=server_2
    acl sites_server_2 dstdomain www.test.foo.com www.test.foo.net
    cache_peer_access server_2 allow sites_server_2
    cache_peer ip.of.server1 parent 80 0 no-query originserver round-robin
    cache_peer ip.of.server2 parent 80 0 no-query originserver round-robin
    

    ラウンドロビンのアルゴリズムは単純にロードバランスを実行します。ラウンドロビンアルゴリズムではすべてのジョブをそれぞれのジョブを時間割で循環キューに入れます。プロセッサはジョブの状態を保存し、次回の処理では保存された状態から演算を再開します。この方法で並列処理とロードバランスを実現します。

PHP 環境


amp 設定オプションで Sun Web Stack ソフトウェアをインストールすれば PHP 実行環境および拡張機能を別途インストールする必要はありません。ただし完全な amp スタックをインストールしていない場合は PHP 実行環境をインストール時の php オプションでインストールできます。詳細は Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

インストールするには以下を実行します。

$ ./install php

PHP インタプリタの場所

以下の表に Sun Web Stack のファイルがインストールされる場所を示します:

プラットフォーム インストール場所
Solaris 10 OS
  1. インストール場所 - /opt/webstack/php/5.2/
  2. 実行ファイル - /var/opt/webstack/php/5.2/
  3. 設定ファイル - /etc/opt/webstack/php/5.2
Red Hat Enterprise Linux
  1. インストール場所 - /opt/sun/webstack/php/
  2. 実行ファイル - /var/opt/sun/webstack/php/5.2/
  3. 設定ファイル - /etc/opt/sun/webstack/php/5.2/

利用可能な PHP 拡張機能

Sun Web Stack ソフトウェアを amp インストールオプションでインストールすればいくつかの PHP モジュールが拡張機能として利用可能です。個々のモジュールは対応する INI ファイルが /etc/opt/sun/webstack/php/5.2/conf.d (RHEL) または /etc/opt/webstack/php/5.2/conf.d (Solaris 10 OS) ディレクトリに用意されています。これらの PHP 拡張機能はデフォルトで有効になっています。いくつかのサードパーティーの拡張機能は無効になっています。PHP 拡張用の INI ファイルは特定の構成の変更にともない編集できます。

Sun Web Stack ソフトウェアで有効な PHP 拡張機能のリストを以下に示します:

バンドルされている拡張機能
APC (有効)
dtrace (Solaris 10 OS のみ)
memcache (有効)
suhosin (無効)
tcpwrap (有効)
idn (有効)
xdebug (無効)
bz2 (有効)
curl (有効)
ftp (有効)
gd (有効)
gettext (有効)
iconv (有効)
imap (有効)
ldap (有効)
mysqli (有効)
mysql (有効)
openssl (有効)
pdo (有効)
pdo_mysql (有効)
pdo_pgsql (有効)
pdo_sqlite (有効)
pgsql (有効)
sqlite (有効)
tidy (有効)
zlib (有効)

バンドルされている PHP 拡張機能の有効化/無効化

PHP の拡張機能を有効にしたり無効にするには PHP の conf.d ディレクトリにある <extension>.ini の行をコメントアウトします。

  • conf.d のディレクトリ (Solaris 10 OS) - /etc/opt/webstack/php/5.2/
  • conf.d のディレクトリ (RHEL) - /etc/opt/sun/webstack/php/5.2/

例えば Suhosin PHP 拡張機能を RHEL で有効にするには以下のタスクを実行します:

  1. /etc/opt/sun/webstack/php/5.2/conf.d/suhosin.ini をテキストエディタで開きます。
  2. Suhosin 拡張機能を有効にするには以下の行をコメント解除します。
extension=suhosin.so

拡張機能の無効にするにはコメント文字 (;) を追加します。


有効にするには Apache Web Server を再起動する必要があります。sudo /etc/init.d/sun-apache22 restart で再起動できます。

Python 環境

Python はオブジェクト指向のスクリプト言語で Sun Web Stack ソフトウェアで利用可能です。Python スクリプトは mod_python を使って Apache Web Server 経由で実行できます。Django, Pylons, TurboGears, および Zope など多くのさまざまな Web フレームワークがコミュニティーによって使われています。


RHEL では Python は Sun Web Stack ソフトウェアとして提供されていません。プラットフォームの提供している Python を使用してください。また mod_python は Sun Web Stack ソフトウェアの一部ではありません。

mod_pythonhttp://httpd.apache.org/modules/python-download.cgi からダウンロードできます。

インストール時の python オプションで Python をインストールできます。詳細は Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

インストールするには以下を実行します。

$ ./install python

Python インタプリタの場所

以下の表に Sun Web Stack のファイルがインストールされる場所を示します:

プラットフォーム インストール場所
Solaris 10 OS
  1. インストール場所 - /opt/webstack/python/
  2. 実行ファイル - /var/opt/webstack/python

RHEL では Sun Web Stack ソフトウェアでは Python は提供していません。

Python 2.5.2 には DTrace のプローブが統合されています。Python ベースのアプリケーションのパフォーマンスのボトルネックや他の問題のトレースに Solaris DTrace 機能が使えます。

Ruby 環境

Ruby は Sun Web Stack ソフトウェアでは Solaris 10 OS と OpenSolaris OS でのみ提供されています。Sun Web Stack ソフトウェアでは Red Hat プラットフォーム用には Ruby インタプリタは提供していません。OS の提供している Ruby を使用してください。

インストール時の ruby オプションで Ruby 実行環境をインストールできます。詳細は Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

インストールするには以下を実行します。

$ ./install ruby

Ruby ファイルのインストール場所

以下の表に Sun Web Stack のファイルがインストールされる場所を示します:

プラットフォーム インストール場所
Solaris 10 OS
  1. インストール場所 - /opt/webstack/ruby/1.8
  2. 実行ファイル - /var/opt/webstack/ruby/1.8

RHEL では Ruby は Sun Web Stack ソフトウェアでは提供していません。

Tomcat Servlet コンテナ

Sun Web Stack ソフトウェアには Tomcat 5.5.27 サーブレットコンテナがバンドルされています。Web アプリケーションのために JSP とサーブレットの配備用にインストールできます。Tomcat Server はインストール時の tomcat オプションでインストールできます。 詳細な情報は Sun Web Stack インストールおよび構成ガイド(日本語) を参照してください。

インストールするには以下を実行します。

$ ./install tomcat
  • Solaris 10 OS では Tomcat は /opt/webstack/tomcat/5.5 にインストールされています。
  • RHEL では Tomcat は /opt/sun/webstack/tomcat/5.5 にインストールされています。

Solaris 10 OS で Tomcat Server を起動するには以下のタスクを実行します:

  1. 以下のコマンドを実行します:
/usr/sbin/svcadm enable sun-tomcat5

Tomcat Server を停止するには以下のタスクを実行します:

/usr/sbin/svcadm disable sun-tomcat5

RHEL で Tomcat Server を起動するには以下のタスクを実行します:

  1. 以下のコマンドを実行します:
/sbin/service sun-tomcat5 start

Tomcat Server を停止するには以下のタスクを実行します:

/sbin/service sun-tomcat5 stop

開発環境としての NetBeans IDE

ここでは Sun Web Stack ソフトウェアで利用できる Sun Web Stack コンポーネントを使って NetBeans IDE で Web アプリケーションを構築する方法を説明します。はじめにエンドツーエンドのエンタープライズレベルの Web アプリケーションを開発する手順を挙げてみます。開発に IDE を使用するには以下が必要です:

  • サーバーサポート - IDE はサーバーのライフサイクルを直感的で簡単に使えるインタフェースが必要です。
  • 言語サポート - IDE はプログラミング言語または Web アプリケーションが構築できる Web アプリケーションのフレームワークをサポートする必要があります。
  • データベースサポート - IDE はテストおよび実稼働のデータベースの開発環境を統合している必要があります。

一般的に開発環境は最小限の労力で Web アプリケーションの構築をサポートし、プロパティーエディタ、ウィザード、あるいはウィジェットを通してスタックレベルの設定のサポートを提供する必要があります。サーバーのサポート、言語のサポート、およびデータベースのサポートは Web アプリケーション開発において IDE が提供する3つの重要な部分と言えるでしょう。

NetBeans IDE は洗練されたインタフェースを備えこれらすべての要素に考慮しており、これにより Web 開発が簡単に行なえます。NetBeans IDE では Web アプリケーションを PHP や Rails のフレームワークを使い、またデータベースには MySQL や PostgresSQL を使い構築できます。


NetBeans IDE をすでにお使いであれば、Sun Web Stack コンポーネントはいくつかのステップで使用できます。例えば Sun Web Stack ソフトウェアで提供されている Apache Tomcat Server 5.5 を追加するには NetBeans IDE の「サーバーを追加」オプションを使用します。

また NetBeans IDE を使って Java/PHP/Ruby の開発ができます。NetBeans IDE は IDE から直接 Web サーバーやデータベースの管理のための統合された設定ウィンドウをサポートします。正式な pkg リポジトリから利用可能な NetBeans のバージョンは NetBeans Web サイトから取得できるものより古い場合がありますので注意してください。以下では開発用に NetBeans IDE 6.0 を設定する方法を説明します。

NetBeans IDE はさまざまな Java EE サーバーと Web サーバーをアプリケーションの配備用にサポートしています。プロジェクトで使用するサーバーを NetBeans では複数設定し持つことができます。たとえば PHP ファイルの配備用に設定した Apache 2 Web Server、Java ベースの Web アプリケーションの配備用に設定した Apache Tomcat コンテナ、および Rails アプリケーションの配備用に WEBrick サーバーを持つことができます。

Apache Web Server

NetBeans 6.1 以上を使う場合にはサーバーを設定する必要はありません。プロジェクトを作成時にサーバーを設定できます。

Apache Web Server を使って PHP の Web アプリケーションを作成するには基本的な手順があります。Apache Web Server は PHP ファイルのサポート用にすでに設定されているため、PHP のプラグインをインストールする以外の操作は必要ありません。

Tomcat Web Server

Sun Web Stack ソフトウェアは Tomcat 5.5 サーブレットコンテナをバンドルしており JSP ベースの Web アプリケーションを配備できます。

Tomcat Web Server を NetBeans IDE で設定するには:

  1. NetBeans IDE でツール > サーバーを選びます。
  2. 左側のパネルで「サーバーの追加」をクリックします。
  3. サーバーのリストから Tomcat 5.5 を選択します。
  4. Catalina ホームフィールドでは /opt/sun/webstack/tomcat/5.5 (Red Hat) または /opt/webstack/tomcat/5.5 (Solaris 10 OS) と入力します。
  5. manager ロールのユーザー名とパスワードを入力します。これらは Tomcat 設定ディレクトリの tomcat-users.xml ファイルに定義してあります。入力したユーザー名が存在しない場合は NetBeans は新しいユーザーを作成します。

Tomcat が NetBeans IDE で正しく設定されるとサーバーノードに Tomcat 5.5 のエントリが表示されます。

サーバーを起動するにはその Tomcat 5.5 ノードで右クリックしサーバーの起動を選択します。

PHP 開発

PHP はインタプリタで、動的な Web ページのスクリプト言語です。NetBeans IDE には PHP を編集したりデバッグのサポートがあります。NetBeans の PHP サポートには以下の機能があります:

NetBeans でプラグインをダウンロードし設定した後、PHP プロジェクトを作成します。ただし PHP プロジェクトを実行しデバッグするには以下の操作が必要です:

  • Apache Web Server - Web Stack が利用できます。ローカルサーバーあるいは FTP を使ったリモートサーバーが使用できます。一般的には実稼働環境はリモートサーバーですが、開発やデバッグ用にローカル Web サーバーは構成されます。
  • PHP エンジン - Web Stack が利用できます。
  • PHP デバッガ - Web Stack の PHP 拡張機能が利用できます。NetBeans IDE の PHP プラグインは XDebug を利用できますが、デバッガの利用は任意です。

Sun Web Stack ソフトウェアの Apache 2 と PHP を利用する場合は追加構成は必要ありません。


PHP 言語のインタプリタは Apache Web Server に統合されています。MySQL と PostgreSQL データベースサポートの PHP モジュールが Apache Web Server 用に提供されています。Apache 2.2 worker MPM 用に PHP を設定する場合は、Apache 2.2 Web Server + PHP FastCGI を使用する必要があります。

いくつかの PHP モジュールは Sun Web Stack ソフトウェアに拡張機能としてパッケージ化されています。個々のモジュールは対応する INI ファイルが /etc/opt/sun/webstack/php/5.2/conf.d (RHEL) または /etc/opt/webstack/php/5.2/conf.d (Solaris 10 OS) ディレクトリに用意されています。これらの PHP 拡張機能はデフォルトで有効になっています。いくつかのサードパーティーの拡張機能は無効になっています。PHP 拡張用の INI ファイルは特定の構成の変更にともない編集できます。

Ruby/Rails 開発環境

NetBeans IDE では Ruby と Ruby on Rails アプリケーションの構築、実行、デバッグなどの統合された開発環境を提供しています。NetBeans は Ruby ファイルや RSpec 仕様のファイル、YAML ファイルなどを含むプロジェクトをサポートします。NetBeans を設定して Web Stack の提供するネイティブ Ruby を使うことができます。IDE はまた Rake 構築ツールの統合と対話型の Ruby シェルのサポートを含んでいます。


Gem マネージャーを使用するには gem がインストールされている必要があります。IDE は Ruby のインストールディレクトリに書き込み権がある必要があります。

Solaris 10 OS では /var/opt/webstack/ruby/1.8/gem_home に Ruby gems リポジトリがあります。GEM_HOME 環境変数を /var/opt/webstack/ruby/1.8/gem_home に設定することでこの Ruby gems のインストールを使用できます。/var/opt/webstack/ruby/1.8/bin には Ruby の実行可能ファイルと他のユーティリティプログラムを含んでいます。これらのプログラムは /usr/bin からリンクされています。

NetBeans を使用する場合には GEM_HOME 環境変数を設定します。

sh の場合 -> export GEM_HOME=/var/opt/webstack/ruby/1.8/gem_home
csh の場合 -> setenv GEM_HOME /var/opt/webstack/ruby/1.8/gem_home


gem を使用するにはインターネットに直接接続している必要があります。ファイアーウォール内やプロキシサーバーを使う環境であれば HTTP_PROXY 環境変数を設定します。

NetBeans IDE では GEM_HOME 環境変数を設定しないと gem が動作しないためネイティブ Ruby は使えません。gem リポジトリを NetBeans からアクセス可能にするために GEM_HOME を設定してください。また GEM_HOME で参照されるディレクトリは書き込み可能にしておく必要があります。以下のコマンドを実行してください:

$ chmod -R a+w /var/opt/webstack/ruby/1.8/gem_home

Ruby on Rails (RoR)

Rails はデータベースを考慮した Web アプリケーション開発用のフルスタックのフレームワークです。Rails は Ruby 開発環境を提供しています。Ruby gems は Ruby パッケージマネージャーの標準です。Run Web Stack ソフトウェアで Ruby をインストールすれば Ruby gems もインストールされます。これにより以下のコマンドを実行すると Rails とその依存機能をインストールすることができます:

/usr/bin/gem install rails --include-dependencies

コマンド行から gem コマンドを実行するかわりに NetBeans IDE からも Rails をインストールできます。Ruby on Rails の開発環境を構築することができます。NetBeans IDE では Ruby on Rails プロジェクトを作成することができます。IDE でプロジェクトを作成すれば rails コマンドで作成したものと同様のフォルダとファイルが作成できます。

Ruby Gems

Ruby Gems は Ruby ソフトウェアライブラリを管理するシステムです。このシステム用にパッケージ化された Ruby コードは gem と呼ばれています。Gems はダウンロード、インストール、Ruby ライブラリの管理に使われます。追加の gem をダウンロードしてインストールできるため Solaris の Web Stack パッケージでは多くの gem を含んでいません。NetBeans からも Gems の管理ができます。

Ruby Gems の設定と情報についての詳細は NetBeans Ruby サイト を参照してください。

一般的なオープンソースアプリケーションの配備

この節ではいくつかの一般的な Web アプリケーションを配備方法を説明します。この作業では Apache Web Server と MySQL データベースの設定を行ないます。

Drupal

Drupal はオープンソースのコンテンツ管理システム(CMS)で、ブログ、フォーラム、ポスト、フィード、社説、トリガーなどのプラグイン可能なコンポーネントを使用できる Web サイトのホストとして使用できます。Drupal はサービスプロバイダーをホストする一般的なアプリケーションの一つで、コントロールパネルからアプリケーションをインストールしたり設定できます。たとえば Fantastico を実行している cPanel です。直感的なインタフェースを使ってブログや Web サイト、その他のアプリケーションをインストールしたり設定できます。

プロバイダーがこのようなインタフェースをサポートしていないのであれば、アプリケーションを手動でインストールする必要があります。

必要なコンポーネント

  1. PHP 実行サポート - Drupal は PHP ベースのアプリケーションです。まず PHP のサポートがサーバーに必要です。Apache Web Server で PHP が使えるように設定してあるプロバイダーをホストしているのであれば必要ありません。
  2. MySQL データベースサポート - Drupal は Web サイトのコンテンツをデータベースに保存します。MySQL サーバーをインストールし実行している必要があります。

Drupal をインストールして設定するには以下の手順を実行してください:

  1. Drupal を取得する - Drupal アプリケーションは http://drupal.org/download からダウンロードできます。
  2. Sun Web Stack ソフトウェアを取得する - 前述の AMP の設定方法を参照してください。
  3. Drupal パッケージを展開し Apache の htdocs ディレクトリに移動してください。Solaris 10 OS では /var/opt/webstack/apache2/2.2/htdocs、RHEL では /var/opt/sun/webstack/apache2/2.2/htdocs にあります。
  4. Drupal をインストールするために必要な権限を設定します - Drupal ディレクトリで chmod o+w sites/default/ を実行してください。
  5. Drupal データベースを作成します - mysqladmin -u root -p create drupal を実行します。(root のパスワードが必要です。root のデフォルトパスワードを変更していない場合は、デフォルトのパスワードは空です)。
  6. Drupal データベースに必要な権限を設定します - mysql -u root -p を実行します。パスワードを入力後、MySQL プロンプトからクエリを実行します - grant select, insert, update, delete, create, drop, index, alter on drupal.* to 'root'@'localhost' IDENTIFIED BY '';
  7. URL にアクセスします - http://localhost/drupal からインストールを実行します。

    Web Stack リポジトリから直接 Drupal をインストールできます。インストール前にシステムを設定する必要はありません。

Geeklog

Geeklog は完全な機能を持つコミュニティーサイトを運営するための Web コンテンツ管理システムです。記事の投稿、スレッド形式のコメント、イベント管理、リンク管理などの機能を提供します。

インストールが簡単なため Geeklog はコミュニティーで広く使われています。Fantastico を実行しているプロバイダをホストしているのであれば cPanel インタフェースから Geeklog をインストールし設定できます。

Geeklog のインストールするには次の手順を実行します:

  1. Web Stack を取得します
  2. Geeklog を取得します - Geeklog のサイト から取得できます。
  3. アーカイブを展開します。
  4. public_html サブディレクトリを geeklog として名前を変更します。このディレクトリを /var/opt/webstack/apache2/2.2/htdocs (Solaris 10) または /var/opt/sun/webstack/apache2/2.2/htdocs (RHEL) として移動します。
  5. その他のコンテンツ (public_html 以外) を htdocs の別のフォルダ geeklog_files として移動します。
  6. Geeklog データベースを作成します - mysqladmin -u root -p create geeklog を実行し geeklog という名前のデータベースを作成します。root のパスワードが必要です。root のデフォルトパスワードは空です。
  7. Geeklog データベース用に必要な権限を設定します - mysql -u root -p を実行します。パスワードを設定した後 MySQL プロンプトからクエリを実行します - grant select, insert, update, delete, create, drop, index, alter on geeklog.* to 'root'@'localhost' IDENTIFIED BY '';
  8. (任意) htdocs/geeklog_files/db-config.php ファイルを編集し MySQL 接続の情報を以下のように設定します:
    $_DB_host = 'localhost';
    $_DB_name = 'geeklog';
    $_DB_user = 'root';
    $_DB_pass = '';
    $_DB_table_prefix = 'gl_';
    $_DB_dbms = 'mysql';
    
    
  9. Geeklog をインストールするために必要な権限を設定します - htdocs ディレクトリで, chmod o+w geeklogchmod o+w geeklog_files を実行します。
  10. インストールスクリプトを実行します - ブラウザから http://localhost/geeklog/admin/install/index.php を表示します。ここで db-config.php が見つからないというエラーが表示されます。
  11. テキストフィールドに /var/opt/webstack/apache2/2.2/htdocs/geeklog_files/db-config.php (Solaris 10 OS)、/var/opt/sun/webstack/apache2/2.2/htdocs/geeklog_files/db-config.php (RHEL) を入力します。
  12. インストールの手順に従います。データベースに関係する情報を入力する必要があります。
  13. htdocs ディレクトリから geeklog_files ディレクトリを削除します。

より詳細な情報は Geeklog installation document を参照してください。

Drupal にコンテンツを移行したい場合は、http://drupal.org/node/1080 を参照してください。

Geeklog はコミュニティーにより開発されたプラグインで簡単に拡張することができます。フォーラムや画像ギャラリーなど多くのプラグインが利用可能です。

その他のアプリケーション

Web Stack ドキュメンテーションブログ を参照してください。

Sun Web Stack ソフトウェアのその他の情報

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Sign up or Log in to add a comment or watch this page.


The individuals who post here are part of the extended Sun Microsystems community and they might not be employed or in any way formally affiliated with Sun Microsystems. The opinions expressed here are their own, are not necessarily reviewed in advance by anyone but the individual authors, and neither Sun nor any other party necessarily agrees with them.

Copyright 1994-2009 Sun Microsystems, Inc.
Powered by Atlassian Confluence
Sun Guidelines on Public Discourse Privacy Policy Terms of Use Trademarks Site Map Employment Investor Relations Contact