WS7で全文検索
全文検索機能について
さて今日は、Sun Java System Web Server 7.0の全文検索機能について紹介します。
はじめに
ApacheのWeb Serverでコンテンツの全文検索を行うためには、
ApacheにNamazu,Lucene,Sennaといった
検索エンジンを取って来てインストール、設定をしなければ
使うことはできません。(インストール&設定は結構大変ですよね!!)
しかし、Sun Java System Web Server 7.0ではデフォルトで全文検索エンジンが
ついていますので、容易にコンテンツの全文検索ができるようになります。
詳細は、 Sun Java System Web Server 7.0 Administrator’s Guideの
Chapter 12 Working With Search Collectionsにも記載されていますので、
こちらも御参考にしてください。
手順の概要
Sun Java System Web Server 7.0で全文検索を行うためには、管理者は
管理画面から、検索機能を有効にした後、「コレクション」と呼ばれる
検索用の専用データベースを作成する必要があります。
そして、検索用のコレクションに対してインデックスを作成し、
検索ができるようになります。以降で詳細な手順を示しますので、
手順に従い設定を行ってください。
※注意事項:
1点だけ管理者が注意しなければならないことがあります。 それは、コレクションに含まれるコンテンツ(HTML,Text,PDF)は アクセス制限が設けられているか否かに関わらず、検索結果として 出力されます。そこで管理者はアクセス制限の設けられているコンテンツに 関しては別のコレクションを作成するか、もしくは検索結果には表示されるが そこから、実態のファイルにアクセスできないように設定する必要があります。 |
事前準備
Web Server 7.0をインストールしたデフォルトの状態では、
Web Server 7.0の情報を表示する画面しか表示されません。
そこで、Web Server 7.0の管理画面に付属する「ヘルプ」の
HTMLコンテンツと、http://docs.sun.comより入手できる
Web Server 7.0の関連ドキュメント(PDF版)をWeb Server上に配置し
参照できるようにします。そしてこれらのファイルを検索できるようにします。
■ 用意するHTMLファイル
* /sun/webserver7/lib/webapps/admingui/html/ja
■ 用意するPDFファイル
* Administrator’s Configuration File Reference
* Administrator’s Guide
* CLI Reference Manual
* Developer’s Guide
* Developer’s Guide to Java Web Applications
* Documentation Center
* Installation and Migration Guide
* NSAPI Developer’s Guide
* PHP Add-On 1.0
* Performance Tuning, Sizing, and Scaling Guide
* Release Notes
* Release Notes for Microsoft Windows
* Troubleshooting Guide
# pwd /sun/webserver7/https-jse8-078/docs # ls img index_de.html index_es.html index_ja.html index_zh_cn.html index.html index_en.html index_fr.html index_ko.html index_zh_tw.html # mkdir OLD # mv *.html img ./OLD # mv OLD /usr/tmp # cp -R /sun/webserver7/lib/webapps/admingui/html/ja/help /sun/webserver7/https-jse8-078/docs/ # cd /usr/tmp/PDF # ls AdminConfigFileReference.pdf NSAPIDevelopersGuide.pdf AdministratorsGuide.pdf PHPAdd-On.pdf CLIReferenceManual.pdf PerformanceTuningGuide.pdf DevelopersGuide.pdf ReleaseNote.pdf DevelopersGuideToJavaWebApplication.pdf ReleaseNoteForMSWindows.pdf DocumentationCenter.pdf TroubleShootingGuide.pdf InstallationAndMigrationGuide.pdf # mkdir /sun/webserver7/https-jse8-078/docs/PDF # mv /usr/tmp/PDF/*.pdf /sun/webserver7/https-jse8-078/docs/PDF |
以上で静的コンテンツの準備は終了です。
全文検索機能の有効化の手順
下記の手順に従い設定を行ってください。
1.管理画面より「共通操作」の「仮想サーバを編集」を選択します。
2.仮想サーバのリストより該当の仮想サーバを選択します。
3.仮想サーバの管理画面より「検索」タブを押下します。
4.「検索アプリケーション」に必要項目を記入します。
URI: | [/search] |
検索アプリケーション: | [*]有効 |
最大ヒット数: | [1000] |
※検索機能を利用するユーザはブラウザより
下記のURLを呼び出すことで利用可能になります。
http://VIRTUAL-SERVER-HOST:PORT/search
次に新規「検索コレクション」を作成します。
5.「新規」ボタンを押下します。
6.「新規検索コレクション」に必要項目を記入し「了解」ボタンを押下します。
*名前: | [AdminHelpCollection] |
表示名: | [AdminHelpCollection] |
説明: | [WS7 ヘルプ検索コレクション] |
コレクションパス: | [*]デフォルトの場所にコレクションを作成します |
ドキュメントルート: | [../docs] |
サブディレクトリ: | [help] |
7.検索コレクション作成の確認
正常に検索コレクションが作成されると、
「検索コレクションが正常に作成されました」のメッセージが表示されます。
8.構成の配備(反映)
追加した検索コレクションの設定を反映させる為、
「配備保留中」のリンクを押下します。
リンクを押下すると、別ウィンドウに「構成の配備」を行うための
画面が表示されますので、「配備」ボタンを押下します。
配備が完了した後、「閉じる」ボタンを押下しウィンドウを閉じます。
9.検索コレクションのドキュメントの追加
現時点で、検索コレクション用の設定は行いましたが、コレクション内に
データは存在しません。
そこで、仮に下記のURLにアクセスして、検索フィールドに文字列を入力しても
検索対象のデータが存在しないため、「検索結果が見つかりませんでした」という
文字列が表示されます。
http://VIRTUAL-SERVER-HOST:PORT/search
そこで、作成したコレクション内にHTML等の情報を含ませる必要があります。
先ほど、作成した「検索コレクション」より検索対象のコレクション
[AdminHelpCollection]のラジオボタンをチェックします。
そして、「ドキュメントの追加」ボタンを押下します。
すると下記の画面が表示されます。
ここに必要項目を入力して「了解」ボタンを押下します。
名前: | AllData |
*パターン: | [*.html] |
デフォルトエンコーディング: | [Japanese auto-detect (JISAutoDetect)] |
サブディレクトリ: | [*] Included |
10.インデキシングの終了確認
「了解」ボタンを押下すると自動的にインデキシングが開始されます。
インデキシングが開始されると、デフォルトの場合、下記のディレクトリに
インデックスが作成されていきます。
# pwd /sun/webserver7/https-jse8-078/collections/jse8-078/AdminHelpCollection # ls -l 合計 48 drwxr-xr-x 2 webservd webservd 512 3月 29日 15:21 converted -rw-r–r– 1 webservd webservd 157 3月 29日 15:21 history drwxr-xr-x 2 webservd webservd 512 3月 29日 15:21 index drwxr-xr-x 2 webservd webservd 512 3月 29日 15:21 lock -rw-r–r– 1 webservd webservd 19591 3月 29日 15:21 log |
そして、インデックスの状態は下記のようにログファイル(log)に出力されます。
Log file for collection created Thu Mar 29 15:21:16 JST 2007 [29/3/2007:15:21:17] IDX Adding documents: [29/3/2007:15:21:17] IDX collection=AdminHelpCollection [29/3/2007:15:21:17] IDX encoding=JISAutoDetect [29/3/2007:15:21:17] IDX pattern=*.html [29/3/2007:15:21:17] IDX /sun/webserver7/https-jse8-078/collections/jse8-078/AdminHelpCollection/index …..中略 [29/3/2007:15:21:21] IDX Indexing /sun/webserver7/https-jse8-078/docs/help/p1.html [29/3/2007:15:21:21] IDX Using charset UTF-8 for /sun/webserver7/https-jse8-078/docs/help/p1.html [29/3/2007:15:21:21] MP Partition: 1, 96 documents, 7066 terms. [29/3/2007:15:21:23] MP Finished dumping: 1 /sun/webserver7/https-jse8-078/collections/jse 8-078/AdminHelpCollection/index 2.914 [29/3/2007:15:21:24] IS 96 documents, 0.75 MB, 7.58 s, 356.00 MB/h [29/3/2007:15:21:24] PM Waiting for housekeeper to finish [29/3/2007:15:21:24] PM Shutdown /sun/webserver7/https-jse8-078/collections/jse8-078/Admin HelpCollection/index AWord 1955941300 [29/3/2007:15:21:24] IDX succeeded |
11.検索の確認
インデキシング作業が完了した後、実際に検索ができるかを確認してみます。
Web Serverのインスタンスが起動されていない場合起動し、
Webブラウザより検索用のURLにアクセスします。
ブラウザより下記のURLに接続してください。
http://VIRTUAL-SERVER-HOST:PORT/search
すると下記の画面が表示されます。
ここで、検索フィールドに検索キーワードを入力します。
たとえば、「コレクション」というキーワードを検索してみます。
すると下記の検索結果画面が表示されます。
以上で、全文検索ができるようになりました。
如何でしょう?
Apache + 全文検索エンジンに比べ非常に分かりやすく、
また非常に簡単に検索できるようになりました。
次回は、PDFや検索画面のカスタマイズについて報告したいと思います。
PS.
次回のアップデートは1週間後位になるかもしれません。(^_^;)
Entry filed under: SJS Web Server 7.