2.6 その他の設定(オプショナル)
2.6 その他の設定(オプショナル)
追加的なインストール(オプショナル)を行うことで,さらに多くの機能が使えるようになります.webMathematica サーバの使用に必要なものではありませんが,このセクションではこれらについて説明します.
2.6.1 MSPアプリケーション
MSP Mathematica アプリケーションには,ドキュメントのようなMathematica のさまざまなパッケージやユーティリティが含まれています.これはすでにwebMathematica のレイアウトにインストールされているので,これ以上の操作をしなくてもwebMathematica を動かすことができます.しかし,特定の関数を使ったりMathematica のヘルプブラウザでwebMathematica のドキュメントを見たりしたい場合は,そのアプリケーションをインストールする必要があります.これはwebMathematica を実行するために必要なもではないので,このインストールはオプショナルです.アーカイブの内容については「付録」の「ファイルのレイアウト 」をご覧ください.
MSPアプリケーションはwebMathematica ツールCD-ROMにアーカイブの形で入っています.適切なアーカイブを解凍し,その内容をMathematica ディレクトリのAddOns/Applications ディレクトリに置いてください.これが終了したらMathematica を起動して「ヘルプ(Help) 」メニューの「ヘルプ用索引の再構成(Rebuild Help Index) 」を選んでください.こうすると,webMathematica のドキュメントがヘルプブラウザの「アドオン(Add-ons) 」セクションで見られるようになります.MSPアプリケーションのファイルのレイアウトはこのセクションの最後にあります.ドキュメントを直接Mathematica で開くこともできます.印刷するときにはこの方が便利かもしれません.
MSPアプリケーションには,Mathematica の式をHTML の表や選択タグにする便利な関数が含まれています.また,SVG を使う上での便利なユーティリティも含まれています.
2.6.2 webMathematica の自動起動
サーバマシンがスタートされる度にwebMathematica のようなWebサーバが自動的に起動されるのは一般的なことです.このセクションではこの自動起動の方法について見てみます.もちろんこれは一般にシステム管理者が行うことなので,このセクションの内容はご自分のシステムのコンベンションに合わせてお使いください.方法はUnixとWindowsで異なります.ここではTomcatの起動に焦点を当てます.これ以外のサーブレットコンテナを使用する場合は,そのサーブレットコンテナのドキュメントをご参照ください.
Unix
Tomcatはシステムのスタートアップスクリプトに加えると自動起動できます.ここでの説明はLinux RedHatシステムを例に取っています.まず「Tomcatの設定」でUnixでの設定 についての箇所をご覧ください.
一般的な起動方法は初期化ディレクトリinit.d にスクリプトを加え,rc3.d のような適切な起動ディレクトリにリンクすることです.スクリプトは作成されたtomcat ユーザを利用してtomcat のスタートとストップについての定義を行います.次はスクリプトの例です.
#!/bin/sh # # tomcat This shell script takes care of starting and stopping # tomcat. # description: tomcat is a servlet/JSP engine, which can be used # standalone or in conjunction with Apache # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network RETVAL=0 export JAVA_HOME=/usr/local/java export CATALINA_HOME=/usr/local/tomcat export PATH=$PATH:/usr/local/bin:$JAVA_HOME/bin # See how we were called. case "$1" in start) # Start daemons. echo -n "Starting tomcat: " cd ~tomcat su tomcat -c '$CATALINA_HOME/bin/catalina.sh start' RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/tomcat echo ;; stop) # Stop daemons. echo -n "Shutting down tomcat: " cd ~tomcat su tomcat -c '$CATALINA_HOME/bin/catalina.sh stop' RETVAL=$? [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/tomcat echo ;; restart) $0 stop $0 start RETVAL=$? ;; *) echo "Usage: tomcat {start|stop|restart}" exit 1 esac exit $RETVAL
これに加え,Xvnc のような仮想Xサーバを使用している場合は,これもシステムの初期化時に起動する必要があります.次はXvncを起動するサンプルスクリプトです.
!/bin/sh # # description: VNC instance for webMathematica # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network RETVAL=0 # See how we were called. case "$1" in start) # Start daemons. echo -n "Starting VNC: " cd ~tomcat su tomcat -c '/usr/bin/vncserver -geometry 800x600 -depth 24 :1 >/dev/null 2>/dev/null' RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/vnc echo ;; stop) # Stop daemons. echo -n "Shutting down VNC: " cd ~tomcat su tomcat -c '/usr/bin/vncserver -kill :1 >/dev/null 2>/dev/null' RETVAL=$? [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/vnc echo ;; restart) $0 stop $0 start RETVAL=$? ;; *) echo "Usage: vnc {start|stop|restart}" exit 1 esac exit $RETVAL
Windows
Windowsでプログラムを自動起動したい場合は,そのプログラムをサービスとしてインストールします.これはWindows NT/2000/XPでのみ有効です.
サービスとしてTomcat をインストールする方法はTomcat 4.1の場合は大変簡単です.Tomcat 4.1ではインストーラがサービスとしてインストールするというオプションを示してくれるからです.Tomcatをインストールするときにこのオプションを選ばなかった場合でも,後からインストーラに戻ることができます.
「コントロールパネル 」の「管理ツール 」でインストールしたサービスに関する情報が得られます.ここにある「サービス 」アイコンを開いてください.ダイアログが開いてマシンにインストールしたサービスを見ることができます.ここで Tomcatを見てください.サービスがスタートされているかどうか,またどのように起動されたかをダイアログが教えてくれます.通常インストーラは Tomcatを,コンピュータが起動されると同時に起動される「自動」タイプにしています.「 Tomcat」という項をクリックして「プロパティ」を選ぶとサービスの設定ができるダイアログが現れます.
JDKが1.4の場合,Tomcatはサービスとして問題なく動きます.Windowsのパスでjava.exを探すとJDKが見付かります.インストールしてあるJDKが必ず見付かるようにしてください.
2.6.3 Webサーバの接続
設定方法によっては中央のアクセス可能なサーバがApache HTTPサーバ,Microsoft Internet Information サーバ,あるいはNetscape Enterpriseサーバのように標準のWebサーバのこともあります.このようなサーバをサーブレットコンテナと繋げて使うことも可能です.この種の設定は複雑になりますが認証やURLの書き換え等付加的な機能が使える利点があり,既存の多くのWebインフラストラクチャに適しています.このセクションでは,いくつかの典型的な例を簡単に説明します.ここに書かれていることを実行する前に,お使いになるサーブレットコンテナをスタンドアロンモードに設定するとよいでしょう.
webMathematica を独立したWebのサーバと一緒に使いたい場合は,webMathematica の全リクエストがwebMathematica Webアプリケーションに確実に転送されるようにしなければなりません.これによってアプレットアーカイブ,HTMLページ,画像へのリクエストが適切に処理されるからです.サーバがサーブレットにしかアクセスできないように設定されていると他のリソースを使うことはできません.
Tomcatのようなサーブレットコンテナを通してwebMathematica を直接実行してみたいだけなら,このセクションは飛ばしても構いません.
ApacheとTomcat
ApacheのWebサーバとTomcatを接続する方法はたくさんあります.中でも便利な方法は,HTTP転送メカニズムを使ってApacheのWebサーバからTomcatにリクエストを送る方法です.これは,ProxyPass 設定指示子を使って行うことができます.以下はApacheの設定ファイル(一般にhttpd.conf と呼ばれるもの)に加えることができる設定例です.
<IfModule mod_proxy.c> <Location /webMathematica/KernelMonitor> Order allow, deny deny from all </Location> ProxyPass /webMathematica http://tomcatserver:8080/webMathematica ProxyPassReverse /webMathematica http://tomcatserver:8080/webMathematica </IfModule>
ProxyPass 指示子はパスから外部URLへのマッピングを提供し,ProxyPassReverse 指示子はプロキシが透過的なるように応答を修正させます./webMathematica への接続はすべてマシンtomcatserver のポート8080へ送られるようになります.この設定ではプロキシからのKernelMonitor への接続も拒否されます.カーネルモニタの機能に関しては後ろのセクション をご覧ください.
ProxyPass 指示子が有効になるためにはモジュールmod_proxy とmod_proxy_http がロードされている必要があります.このロードは,Apacheの設定ファイルにある以下の設定情報を使って行うことができます.
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so
ApacheとTomcatの使用について,さらに詳しく知りたい場合は,それぞれのWebサイト(Apache: http://httpd.apache.org , Tomcat: http://jakarta.apache.org )をご覧ください.ApacheはWindows,Unix,Mac OS Xのどれででも使うことができます.http://www.galatea.com/flashguides/apache-tomcat-4-win32.xml も便利なサイトです.
MicrosoftサーバとTomcat
Microsoft PWSあるいはIISをWebサーバとして配置したい場合,Tomcatをサーブレットコンテナとして使うことができます.
TomcatにはIISおよびPWSのサーブレットコンテナとして使うための設定説明が付いています.設定は手動で行わなければなりません.簡単ですがたくさんのステップをひとつひとつ慎重に行わなければなりません.中にはWindowsのレジストリを手動で編集するような作業も含まれます.このような手動操作が含まれるので,これらのサーバではJRunを使った方が簡単でしょう.
Tomcatの設定ディレクトリにあるworkers.properties ファイルを忘れずに編集して,workers.tomcat_home とworkers.java_home に値を設定してください.入れる値はファイルの説明から明らかです.
Apache/MicrosoftサーバとJRun
JRunにはJRun Management Consoleを介してアクセスできる接続ウィザードが付いています.これはwebMathematica でも使えます.