このセクションではWebコンテンツサイト内検索機能を付加するNamazuを用いた全文検索エンジンについて初心者/ビギナー向けに解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
全文検索システムNamazuの構築

全文検索エンジンとは

Namazuのインストール

Namazuのファイル構成

Apacheによる公開設定

索引作成のための設定

mknmzによる索引の作成

検索出力のための設定

namazu.cgiによる検索の実行

出力デザインのカスタマイズ

Namazu検索窓の設置

Namazuの運用のポイント


Webコンテンツを便利にする「サイト内検索エンジン」とは

例えばこの お便利サーバー.com のように数百ページにも及ぶWeb コンテンツ では、ブラウズに慣れていない閲覧者が自分に必要とするページを探し出すのは容易なことではありません。

もちろんコンテンツを作成するときにはそれなりに工夫して、できるだけ閲覧者が迷わないように心掛けています。

ところが例えば お便利サーバー.com では ダイナミックDNS に関する記述があるページだけでも数十ページに及びますから、これをメニューやページ構成だけで閲覧者が望むページへ正確に誘導するのはまず不可能です。

こういう場合に役に立つのが、 データベース 化されたコンテンツ内のすべての テキスト 情報から特定のキーワードで検索してそれが掲載されているページを探し出す サイト内検索エンジン という仕組みです。

その一番ポピュラーで簡単な方法が、GoogleやYahoo等ののコンテンツ内検索窓 Google検索窓について を利用する方法です。

例えば下の入力欄に適当な サーバー 技術用語をタイプして Google 検索 または 検索 ボタンをクリックしてみてください。お便利サーバー.com内でその技術用語を使っているページの一覧が表示されるはずです。

Google
WWW を検索 www.obenri.com を検索

Yahoo!検索

  • ウェブ全体を検索
  • このサイト内を検索

また、 XOOPS Cube XOOPS Cubeのセットアップについて のような CMS の多くはシステム上にサイト内検索の仕組みを実装していることが多く、特別な設定操作不要でサイト内検索ができるようになっています。

そして、このお便利サーバー.comには、このセクションで解説する Namazu という全文検索エンジンが仕組んであり、コンテンツ内のすべてのページの語句から検索が行えるようになっています。

試しに、左上の サイト内検索 の入力欄に適当なサーバー技術用語を入れて 検索 ボタンをクリックしてみてください。新しいページが開いてその用語に関して関連の強い順にページのリストが表示されるはずです。

お便利サーバー.comの検索機能(Namazu)
お便利サーバー.comの検索機能(Namazu)

これらのサイト内検索エンジンは、それぞれ仕組みは異なりますが、コンテンツの中から必要なページを高速に検索できるため、コンテンツがある程度以上の規模になってきたら是非とも実装したい機能です。

最近の傾向として、インターネット上から特定のページを探す方法の大半は キーワード検索 で占められていて、また特定のページに行き着いたら、

まずサイト内検索サービスがあるかどうかを探してみる。

という人が増えています。

つまりコンテンツを運用する側にとって、サイト内検索エンジンの設置はユーザビリティを高め、ひいてはアクセスアップのレベルを上げる重要な仕組みのひとつになっているといっても過言ではないでしょう。

このページの先頭へ↑

一長一短があるサイト内検索エンジン

サイト内検索エンジンで最も設置や運用が簡単なのは、外部の検索エンジンの「検索窓」を利用する方法です。

Googleの場合は http://www.google.co.jp/intl/ja/searchcode.html を、Yahooの場合は Yahoo!検索 - 検索窓(サーチボックス)設置方法 を参考に自分のページにタグを貼り付ければそれで終わりです。

ただしこの検索窓が有効に機能するには、 コンテンツ 中のデータがそれぞれの検索エンジンの データベース上 に登録されている必要があります。

今日新しいページを追加公開してもすぐにそのページの内容が検索エンジンのデータベースに載るわけではありませんから、新しいページが検索の対象になるまでには少なくとも数日、通常一週間程度はかかると考えてください。

また、ページの内容を書き換えたり、ページのファイル名を変更したりすると、古いままの情報がしばらくデータベース上で生き続けてしまうため、検索結果からページを開こうと思ってもページが見つからなかったりします。

またこの方法では、データベースの中で特定のキーワードがどういった優先順位になっているかは当然知ることができませんから、こちらの思ったとおりの検索結果を出してくれるかどうかは運に任せるしかありません。

つまりこういった「外部の検索エンジンを利用する」という方法は、手間はかかりませんが肝心な部分はほとんど自分の思い通りにはならないという欠点があるわけです。

一方、独自にサイト内検索エンジンを実装すればそういった諸々の問題は一応解消します。

立ち上げは多少面倒ですが、サイト内検索エンジンを実装している、あるいはサイト内検索エンジンモジュールが利用できる CMS を最初から導入しておけば、通常はページが作成、変更、追加されると同時にデータベースが更新されるため、即時に検索データベースも変更されることになります。

つまりこの方法の最大の利点は、一度コンテンツを立ち上げてしまえばそれ以後はサイト内検索エンジンの存在を全く気にする必要がないということです。

ただしこの方法でも、検索結果の出力や語句の優先順位についてはある程度CMSやモジュールのルールに従わなければならないので、細かい制御がやりにくいという欠点もあります。

そしてCMSを利用しないコンテンツのサイト内検索エンジンとして有効なのが 全文検索エンジン というシステムです。

前述の二つの方法と違って設置や設定に手間はかかりますが、その分きめ細かい制御が可能です。

全文検索エンジンにはいくつか種類がありますが、仕組みとしては大体どれも同じで、

1.コンテンツ内のテキスト情報を集めて索引データベースを作成しておく。

2.検索要求に基づいて索引データベースを参照し、リンク先の抽出を行う。

3.リンク先をリスト化してを動的にページ出力する。

Namazuの解説書です

という手順になります。

一般に全文検索エンジンシステムは独立したプログラム群になっていますので、例えば索引データベースに含めたくないディレクトリやファイルの指定、キーワードの重要度の設定、出力形式の調整などを自由に行うことができますので、サイト内検索の重要度が高いコンテンツ運営では最もふさわしいものといえるでしょう。

このセクションではその全文検索エンジンの中からもっともポピュラーな Namazu の設置と運用方法について解説します。

このサイトは リンクフリー です。趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。今のところ更新予定はありませんのでご了承ください。
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。