Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Fessで作るApache Solrベースの検索サーバー
~ モバイル編

携帯電話で検索してみよう!

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2010/01/28 16:30

 Fessは簡単に導入できる、Javaベースのオープンソース全文検索サーバーです。検索エンジン部分にはApache Solrを採用して、ウェブ上またはファイルシステム上にあるドキュメントを検索することができます。対応ファイルフォーマットもHTML、MS Office系ファイル、圧縮ファイルなど様々なものに対応しています。本連載ではFessの携帯端末での利用方法についてご紹介します。

目次

はじめに

 前回の導入編では、Fessによるオープンソース全文検索サーバの構築方法を紹介しました。Fessはdocomo、auおよびSoftbankの携帯端末での検索に対応しているので、今回はその利用方法を紹介します。

 本記事ではFess 2.0を利用して説明します。Fessの構築方法については導入編を参照ください。

対象読者

  • 携帯端末用検索システムを構築してみたい方
  • 既存の携帯サイトに検索機能を追加してみたい方

必要な環境

 この記事の内容に関しては次の環境で、動作確認を行っています。

  • CentOS 5.4
  • JDK 1.6.0_17

Fessの携帯端末対応

 全文検索システムにおいて、携帯端末で利用するためにはシステム的に次のような対応が必要になってきます。

  1. 携帯端末の情報を取得して、端末に適した表示をする
  2. クロール作成時に端末用のユーザーエージェントを指定できる
  3. 閲覧キャリア情報をインデックス情報に含めることができる
  4. 検索結果がPCサイトの場合、コンテンツ変換した内容を表示できる

 Fessでは上記すべてに対応しています。まず、携帯端末の情報を取得して処理するためにmobyletを採用しています。mobyletは携帯向けWebアプリケーション構築のためのJavaオープンソースフレームワークです。mobyletを利用することでdocomo、auおよびSoftbank端末を識別して、それぞれの端末ごとに適切な結果を表示できます。

 次にFessでは検索対象をクロールするときに、ユーザーエージェントをウェブクロール設定で設定できます。対象キャリアのユーザーエージェントを指定してクロールすることで、その携帯端末向けサイトを取得できます。ただし、対象の携帯サイトをIPで制限している場合は、FessサーバのIPを許可して携帯端末サイトを表示できるようにする必要があります。また、ウェブクロール設定で[ブラウザ]はデフォルトですべて選択されていますが、表示したいキャリアを選択することでそのキャリア端末だけで結果を表示することが可能になります。

 検索結果がPCサイトである場合、検索結果にPCサイトのリンクが表示されても携帯端末では通常表示することができません(PCサイトビューアなどを利用すれば閲覧可能です)。Fessでは「Google Wireless Transcoder」を利用することが可能です。Google Wireless TranscoderはGoogle社により提供されるサービスで、PCサイトを各種携帯端末に合わせて変換してくれます。Fessでは簡単な設定で、検索結果をGoogle Wireless Transcoderのリンクに変換する機能を持ち、検索結果がPCサイトでもスムーズに利用することが可能です。


  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

修正履歴

  • 2010/01/20 05:50 3Gを削除

著者プロフィール

  • 菅谷 信介(スガヤ シンスケ)

    N2SM, Inc.にソフトウェア・アーキテクトとして勤務。 Apache Portalsにて、コミッター兼PMCとして活動。その他、Seasar Projectなどのオープンソースプロジェクトでコミッターとしても活動。オープンソース関連の活動をブログやTwitterに投稿。

バックナンバー

連載:Fessで作るApache Solrベースの全文検索サーバー
All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5