This commit is contained in:
Shinsuke Sugaya 2014-02-06 23:39:18 +09:00
parent f9930fc7c9
commit e9f69488f8
880 changed files with 35232 additions and 0 deletions

View file

@ -0,0 +1,15 @@
------------------
Fess Download
------------------
Takaaki SONE
------------------
2009-08-05
Download
{{{http://sourceforge.jp/projects/fess/releases/}http://sourceforge.jp/projects/fess/releases/}}
Snapshot
{{{http://fess.codelibs.org/snapshot/}http://fess.codelibs.org/snapshot/}}

View file

@ -0,0 +1,46 @@
------------------
Getting Started with Fess
------------------
Shinsuke Sugaya
------------------
2010-11-12
------------------
About Fess UI
Fess provides the following UI:
* Search Form/Results UI for Browser
* Search Form/Results UI for Mobile Device
* Administration UI on Browser
[]
Search Form/Results UI for Browser
This UI allows an user to search target documents of Fess on a browser.
A search form and button are displayed to access to {{{http://localhost:8080/fess/}http://localhost:8080/fess/}}.
To input a search word into the search form and click the search button, you can get the search results on the following page.
[./images/ja/fess_search_result.png] Display the search result on a browser
Search Form/Results UI for Mobile Device
This UI allows an user to search target documents of Fess on a mobile device.
If you access a search page of Fess by a mobile device, you are redirected to {{{http://localhost:8080/fess/mobile/}http://localhost:8080/fess/mobile/}}.
To input a search word into the search form and click the search button, you can get the search results on the following page.
[./images/ja/fess_search_mobile_result.png] Display the search results on a mobile device
Administration UI on Browser
This is an adiministrative UI to manage Fess server.
The administrative UI does not support an access from a mobile device.
If you access to {{{http://localhost:8080/fess/admin}http://localhost:8080/fess/admin}}, a login page is displayed.
You can manage Fess server after logging in as admin user.

View file

@ -0,0 +1,66 @@
------------------
Quick Startup Guide
------------------
Shinsuke Sugaya
------------------
2010-11-12
------------------
Overview
This document describes a minimum step to use Fess.
Download
You can get the latest Fess release from {{{http://sourceforge.jp/projects/fess/releases/}http://sourceforge.jp/projects/fess/releases/}}.
Installation
Unzip fess-server-x.y.zip to a directory you want to install.
Grant an execution permission to script files in bin directory.
+---------------------------------+
$ unzip fess-server-x.y.zip
$ cd fess-server-x.y
$ chmod +x bin/*.sh
+---------------------------------+
Start Fess
Run startup.[sh|bat] script file to start Fess server.
+---------------------------------+
$ ./bin/startup.sh
+---------------------------------+
Access to Administrative UI
Access to {{{http://localhost:8080/fess/admin}http://localhost:8080/fess/admin}}.
The username/password for an administrator is admin/admin.
Click Web link at the menu pane after logging in as admin user.
Create a web crawling configuration (Name, URL, Max access count,..) to crawl a web site.
Click General link at the menu pane.
Type a schedule info to start a crawling.
If you want to start crawling at 10:35am, type "0 35 10 * * ?" into Schedule field.
The format is "Sec Min Hour Day Month Day Year", which is like a cron format.
Click Update button to save parameters.
If you set a crawling time as 10:35am, Fess start to crawl at 10:35am automatically.
Session Info link show you the crawling information.
If the crawl is finished, WebIndexSize is displayed at Session Info page.
Search
Finished a crawling, access to {{{http://localhost:8080/fess/}http://localhost:8080/fess/}}.
You can search indexed documents and see the result.
Stop Fess
Run shutdown.[sh|bat] script file to stop Fess server.
+---------------------------------+
$ ./bin/shutdown.sh
+---------------------------------+

View file

@ -0,0 +1,62 @@
------------------
Screenshot
------------------
Shinsuke Sugaya
------------------
2010-11-12
------------------
Screenshot
* Search Results on Browser
[./images/ja/screenshot/fess_search_result.png] Search Results on Browser
* Search Results on Mobile Device
[./images/ja/screenshot/fess_search_mobile_result.png] Search Results on Mobile Device
* Crawling Setting
[./images/ja/screenshot/fess_admin_crawler.png] Crawling Setting
* Web Crawling Config
[./images/ja/screenshot/fess_admin_webconfig.png] Web Crawling Config
* File System Crawling Config
[./images/ja/screenshot/fess_admin_fsconfig.png] File System Crawling Config
* Web Authentication Setting
[./images/ja/screenshot/fess_admin_webauth.png] Web Authentication Setting
* Path Mapping Setting
[./images/ja/screenshot/fess_admin_pathmapping.png] Path Mapping Setting
* Browser Type Setting
[./images/ja/screenshot/fess_admin_browsertype.png] Browser Type Setting
* Solr Setting
[./images/ja/screenshot/fess_admin_solr.png] Solr Setting
* Session Info
[./images/ja/screenshot/fess_admin_logfile.png] Session Info
* Session Info List
[./images/ja/screenshot/fess_admin_sessioninfo.png] Session Info List
* Session Info Details
[./images/ja/screenshot/fess_admin_sessioninfo2.png] Session Info Details
* Backup/Restore
[./images/ja/screenshot/fess_admin_backuprestore.png] Backup/Restore

88
src/site/apt/setup.apt Normal file
View file

@ -0,0 +1,88 @@
------------------
Installation
------------------
Shinsuke Sugaya
------------------
2010-11-12
------------------
Installation
A system requirement to run Fess server is:
* OS: an operation system which has Java runtime environment, such as Windows and Unix.
* Java: Java 6 or the above
[]
You can download Java 6 from {{{http://java.sun.com/}http://java.sun.com/}}.
Download
Download the latest Fess package from {{{http://sourceforge.jp/projects/fess/releases/}http://sourceforge.jp/projects/fess/releases/}}.
Installation
Unzip fess-server-x.y.zip.
Grant an execution permission to script files in bin directory if you install on Unix environment.
+---------------------------------+
$ unzip fess-server-x.y.zip
$ cd fess-server-x.y
$ chmod +x bin/*.sh # (Unix only)
+---------------------------------+
Start Fess
Run startup script to start Fess server.
+---------------------------------+
$ ./bin/startup.sh # (Use startup.bat on Windows)
+---------------------------------+
Access to {{{http://localhost:8080/fess/}http://localhost:8080/fess/}} to check if Fess is running.
The administrative UI is {{{http://localhost:8080/fess/admin/}http://localhost:8080/fess/admin/}}.
The default username/password is admin/admin.
admin account has fess role, which is used as an administrative role.
Stop Fess
Run shutdown script to stop Fess server.
+---------------------------------+
$ ./bin/shutdown.sh # (Use shutdown.bat on Windows)
+---------------------------------+
Change Password for Administrator User
admin account is managed by an application server.
A default Fess server uses Tomcat as the app server.
Therefore, a password change is the same as Tomcat's steps.
If you want to change a password, modify a password of admin user in conf/tomcat-user.xml.
+---------------------------------+
<user username="admin" password="admin" roles="fess"/>
+---------------------------------+
Change Password for Solr Server
Fess server contains Apache Solr as a search engine, and a password is needed to access to it.
In a production envrionment, CHANGE the password.
First, changing the password, change solradmin of a password attribute in conf/tomcat-user.xml.
+---------------------------------+
<user username="solradmin" password="solradmin" roles="solr"/>
+---------------------------------+
Second, set the same one to the following Password element in webapps/fess/WEB-INF/classes/fess_solr.dicon.
+---------------------------------+
<component class="org.apache.commons.httpclient.UsernamePasswordCredentials">
<arg>"solradmin"</arg> <!-- Username -->
<arg>"solradmin"</arg> <!-- Password -->
</component>
+---------------------------------+

View file

@ -0,0 +1,49 @@
------------------
設定情報のバックアップとリストア
------------------
Shinsuke Sugaya
------------------
2009-10-10
------------------
設定情報のバックアップとリストア
ここでは、Fess の設定情報のバックアップとリストア方法について説明します。
* 設定方法
管理者アカウントでログイン後、メニューのバックアップ/リストアをクリックします。
[../../images/ja/fess_admin_backuprestore.png] バックアップ/リストア
* 設定のバックアップ
ダウンロードリンクをクリックすると、Fess の設定情報を XML 形式で出力します。
保存される設定情報は以下のものです。
* クロール全般の設定
* ウェブクロール設定
* ファイルシステムクロール設定
* パスマッピング
* ウェブ認証
* 対応ブラウザ
* セッション情報
[]
Solr 内のインデックスデータやクロール中のデータはバックアップ対象にはなりません。
それらのデータは Fess の設定情報をリストア後、クロールすることで再生成することができます。
* 設定のリストア
バックアップで出力した XML をアップロードすることで設定情報を復元することができます。
XML ファイルを指定してデータのリストアボタンをクリックしてください。
データの上書きを有効にすると、既に同じデータがある場合は既存のデータの更新を行います。

View file

@ -0,0 +1,26 @@
------------------
ブラウザタイプの設定
------------------
Shinsuke Sugaya
------------------
2009-10-10
------------------
ブラウザタイプの設定
ここでは、ブラウザタイプに関わる設定について説明します。
ブラウザタイプは検索結果データに付加され、閲覧ブラウザの種類ごとに検索結果を出し分けることができます。
* 設定方法
管理者アカウントでログイン後、メニューのブラウザタイプをクリックします。
[../../images/ja/fess_admin_browsertype.png] ブラウザタイプの設定
* ブラウザタイプ
表示名と値を設定できます。
新規に閲覧端末を増やしたい場合などに利用します。
特別なカスタマイズが必要場合にしか、利用する必要はありません。

View file

@ -0,0 +1,107 @@
------------------
クロール全般の設定
------------------
Takaaki SONE
Shinsuke Sugaya
------------------
2009-10-10
------------------
クロール全般の設定
ここでは、クロール全般に関わる設定について説明します。
* 設定方法
管理者アカウントでログイン後、メニューのクロール全般をクリックします。
[../../images/ja/fess_admin_crawler.png] クロール全般
* クロールの間隔についての設定
ウェブサイトやファイルシステムに対してクロールを行う間隔を設定できます。
デフォルトでは以下のようになっています。
+------------------------------------+
0 0 0 * * ?
+------------------------------------+
数字は、左から、秒、分、時、日、月、曜日 を表します。
記述形式は Unix の cron の設定に似ています。
この例だと、毎日午前0時0分にクロールが行われます。
以下に記述方法の例を示します。
*---------------------+-----------------------------------------------------+
| 0 0 12 * * ? | 毎日 12pm に起動 |
*---------------------+-----------------------------------------------------+
| 0 15 10 ? * * | 毎日 10:15am に起動 |
*---------------------+-----------------------------------------------------+
| 0 15 10 * * ? | 毎日 10:15am に起動 |
*---------------------+-----------------------------------------------------+
| 0 15 10 * * ? * | 毎日 10:15am に起動 |
*---------------------+-----------------------------------------------------+
| 0 15 10 * * ? 2005 | 2009 年の毎日 10:15am に起動 |
*---------------------+-----------------------------------------------------+
| 0 * 14 * * ? | 毎日 2:00pm-2:59pm で 1 分毎に起動 |
*---------------------+-----------------------------------------------------+
| 0 0/5 14 * * ? | 毎日 2:00pm-2:59pm で 5 分毎に起動 |
*---------------------+-----------------------------------------------------+
| 0 0/5 14,18 * * ? | 毎日 2:00pm-2:59pm と 6:00pm-6:59pm で 5 分毎に起動 |
*---------------------+-----------------------------------------------------+
| 0 0-5 14 * * ? | 毎日 2:00pm-2:05pm で 1 分毎に起動 |
*---------------------+-----------------------------------------------------+
| 0 10,44 14 ? 3 WED | 3 月の水曜日の 2:10pm と 2:44pm に起動 |
*---------------------+-----------------------------------------------------+
| 0 15 10 ? * MON-FRI | 月曜日から金曜日までで 10:15am に起動 |
*---------------------+-----------------------------------------------------+
秒まで設定できますが、デフォルトの設定では 60 秒間隔で実行するかどうかを確認しています。
秒まで正確に設定したい場合や 1 時間単位で確認すれば十分な場合などは、webapps/fess/WEB-INF/classes/chronosCustomize.dicon の taskScanIntervalTime の値をカスタマイズしてください。
* インデックスのコミット、最適化
クロール後、データは Solr に対して登録されます。
インデックスのコミットまたは最適化することで、その登録されたデータが有効になります。
インデックスの最適化が選択されていれば、Solr に対して optimize が発行され、コミットを選択した場合は commit が発行されます。
* サーバー切り替え
Fess は複数の Solr サーバーをグループとしてまとめることができ、そのグループを複数管理できます。
更新用と検索用の Solr サーバーグループは異なるグループを利用します。
たとえば、2 つのグループがあった場合、更新用がグループ 2 を利用し、検索用がグループ 1 を利用します。
サーバー切り替えを有効にしている場合は、クロールが完了した後に更新用がグループ 1 になり、検索用がグループ 2 に切り替わります。
* ドキュメント数毎にコミット
Fess ではインデックス化のパフォーマンスを上げるためにクロールしながら、20 件単位でドキュメントを Solr に対して送信します。
コミットせずにドキュメントを追加しつづけると、Solr 上でのドキュメント追加のパフォーマンスが低下するため、ここで指定した値ごとに Solr に対してドキュメントのコミットを発行します。
デフォルトでは 1000 件ドキュメントを追加したら、コミットされます。
* 同時実行のクロール設定数
Fess のドキュメントクロールはウェブクロール、ファイルシステムクロールの順に行われます。
それぞれのクロールにおいて、ここで指定した値の数だけ、設定したクロール先を複数同時に実行することができます。
たとえば、同時実行のクロール設定数を 3 として、ウェブクロールに設定 1 から設定 10 まで登録してある場合、クロール実行時には設定 1 から設定 3 までの 3 つが実行されます。
それらのどれかのクロールが完了すると、設定 4 のクロールが開始されます。
同様に、設定 10 まで 1 つ完了するごとに 1 つ起動していきます。
クロール設定でスレッド数を指定することができますが、ここでの同時実行のクロール設定数は起動するスレッド数を示すものではありません。
たとえば、同時実行のクロール設定数が 3 で、各クロール設定のスレッド数を 5 としている場合は、3 x 5 = 15 のスレッド数が起動してクロールすることになります。
* インデックスの有効期限
インデックスされているデータを新規データ登録後に自動的に削除することができます。
インデックスの有効期限で 5 日を選択している場合は、5 日以上前に登録して更新がなかったものが削除されます。
コンテンツが削除されてしまったデータなどを検索対象から外す場合などに利用できます。
* モバイル変換
検索結果のウェブサイトが PC 用だった場合、モバイル端末で正しく表示できないかもしれません。
そのような場合に、モバイル変換を選択していると、PC サイトをモバイル端末用に変換して表示することができます。
Google を選択した場合、Google Wireless Transcoder により、携帯向けにコンテンツを表示することができます。
たとえば、PC 用サイトを検索対象にして結果をモバイル端末でも閲覧したい場合、モバイル端末向け検索結果一覧で検索結果のリンクが Google Wireless Transcoder に渡すリンクになります。
モバイル変換を利用することでモバイル端末でもスムーズな検索を利用することができます。

View file

@ -0,0 +1,90 @@
------------------
ファイルシステムを対象としたクロールに関する設定
------------------
Takaaki SONE
Shinsuke Sugaya
------------------
2009-09-05
------------------
ファイルシステムを対象としたクロールに関する設定
ここでは、ファイルシステムを対象としたクロールに関する設定について説明します。
* 設定方法
管理者アカウントでログイン後、メニューのファイルシステムをクリックします。
[../../images/ja/fess_admin_fsconfig.png] ファイルシステムクロールの設定
* 設定名
一覧ページで表示される名前です。
* パスの指定
パスは複数指定できます。
file: で始まるように指定します。
たとえば、
+---------------------------------------+
file:/home/taro/
file:/home/documents/
+---------------------------------------+
のように指定します。
指定されたディレクトリ以下を巡回します。
Windows 環境の場合は URI で記述する必要があるので、c:\Documents\taro というパスであれば file:/c:/Documents/taro と指定します。
* パスのフィルタリング
正規表現で指定することによって、特定のパスパターンをクロールの対象にしたり、除外できます。
たとえば、/home/ 以下しかクロールしない場合は、対象とする URL に
+---------------------------------------+
file:/home/.*
+---------------------------------------+
また、拡張子が png のものを対象から除外したい場合は、除外する URL に
+---------------------------------------+
.*\.png$
+---------------------------------------+
と、指定します。
複数指定することが可能です。
* 深さ
ディレクトリ階層の深さを指定します。
* 最大アクセス数
クロールして取得するドキュメント数を指定できます。
* スレッド数
クロールするスレッド数を指定します。
5 を指定した場合、5 個のスレッドで同時にウェブサイトをクロールします。
* 間隔
ドキュメントをクロールする間隔です。
5000 とした場合は 1 つのスレッドが 5 秒間隔でドキュメントを取得しにいきます。
スレッド数を 5 個、間隔を 1000 ミリ秒とした場合、1 秒間で 5 ドキュメントを取得しにいくことになります。
* ブラウザタイプ
選択されたブラウザタイプのデータとして、クロールしたドキュメントを登録します。
PC しか選択されていない場合は、モバイル端末で検索しても結果に表示されません。
特定のモバイル端末だけで表示したい場合にも利用できます。
* 状態
有効にすることで、設定されているクロール時刻にクロールされます。
一時的にクロールしないようにしたい場合に利用できます。

View file

@ -0,0 +1,14 @@
------------------
管理 UI ガイド
------------------
Shinsuke Sugaya
------------------
2009-12-07
------------------
Fess 1.1 管理 UI ガイド
ここでは、Fess 1.1 の管理 UI に関する説明です。

View file

@ -0,0 +1,22 @@
------------------
ログファイルのダウンロード
------------------
Shinsuke Sugaya
------------------
2009-10-10
------------------
ログファイルのダウンロード
ここでは、Fess で出力されるログファイルのダウンロードについて説明します。
* 設定方法
管理者アカウントでログイン後、メニューのログファイルをクリックします。
[../../images/ja/fess_admin_logfile.png] セッション情報
* ダウンロード
表示されているログファイル名をクリックすると、ログファイルをダウンロードすることができます。

View file

@ -0,0 +1,26 @@
------------------
パスマッピングの設定
------------------
Shinsuke Sugaya
------------------
2009-09-05
------------------
パスマッピングの設定
ここでは、パスマッピングに関わる設定について説明します。
パスマッピングは検索結果に表示するリンクを置き換えたい場合などに利用することができます。
* 設定方法
管理者アカウントでログイン後、メニューのパスマッピングをクリックします。
[../../images/ja/fess_admin_pathmapping.png] パスマッピングの設定
* パスマッピング
パスマッピングは指定した正規表現でマッチする部分を置き換え文字列で置換します。
ローカルなファイルシステムをクロールした場合、環境によっては検索結果のリンクが有効でない場合があります。
そのような場合にパスマッピングを利用して、検索結果のリンクを制御できます。
パスマッピングは複数指定できます。

View file

@ -0,0 +1,67 @@
------------------
サーバーの設定
------------------
Shinsuke Sugaya
------------------
2009-10-10
------------------
ポートの変更
Fess がデフォルトで利用するポートは 8080 になります。
変更するには以下の手順で変更します。
* Tomcat のポート変更
Fess が利用している Tomcat のポートを変更します。
変更は conf/server.xml に記述されている以下のものを変更します。
* 8080: HTTP アクセスポート
* 8005: シャットダウンポート
* 8009: AJP ポート
* 8443: SSL の HTTP アクセスポート (デフォルトは無効)
* Solr の設定
標準構成では、Solr も同じ Tomcat の設定を利用しているので、Tomcat のポートを変更した場合は、Fess の Solr サーバーの参照先情報も変更する必要があります。
webapps/fess/WEB-INF/classes/fess_solr.dicon を変更します。
+----------+
<arg>"http://localhost:8080/solr"</arg>
+----------+
Heap メモリーの最大値変更
インストール環境によっては以下のような OutOfMemory エラーが発生します。
+----------+
java.lang.OutOfMemoryError: Java heap space
+----------+
発生した場合は ヒープメモリの最大値を増やしてください。
bin/setenv.[sh|bat] に -Xmx512m のように追加します(この場合は最大値を 512M に設定)。
+----------+
Windowsの場合
...-Dpdfbox.cjk.support=true -Xmx512m
Unixの場合
...-Dpdfbox.cjk.support=true -Xmx512m"
+----------+
携帯端末情報の更新
携帯端末情報は {{{http://valueengine.jp/}ValueEngine社}} より提供されるものを利用しています。
最新の携帯端末情報を利用したい場合は、端末プロファイルをダウンロードして、webapps/fess/WEB-INF/classes/device/ に _YYYY-MM-DD を取り除いて保存します。
再起動後に変更が有効になります。
+----------+
ProfileData_YYYY-MM-DD.csv -> ProfileData.csv
UserAgent_YYYY-MM-DD.csv -> UserAgent.csv
DisplayInfo_YYYY-MM-DD.csv -> DisplayInfo.csv
+----------+

View file

@ -0,0 +1,48 @@
------------------
セッション情報の設定
------------------
Shinsuke Sugaya
------------------
2009-10-10
------------------
セッション情報の設定
ここでは、セッション情報に関わる設定について説明します。
1 回のクロールした結果を 1 つのセッション情報として保存されます。
実行した時間やインデックスされた数を確認することができます。
* 設定方法
管理者アカウントでログイン後、メニューのセッション情報をクリックします。
* セッション情報一覧
[../../images/ja/fess_admin_sessioninfo.png] セッション情報一覧
すべて削除リンクをクリックすると実行中でないすべてのセッション情報を削除することができます。
* セッション情報詳細
[../../images/ja/fess_admin_sessioninfo2.png] セッション情報詳細
セッション ID を指定してクロール内容を確認できます。
* Cralwer*: クロール全体に関する情報
* FsCrawl*: ファイルシステムのクロールに関する情報
* WebCrawl*: ウェブのクロールに関する情報
* Optimize*: Solr サーバーに発行した最適化に関する情報
* Commit*: Solr サーバーに発行したコミットに関する情報
* *StartTime: 開始時刻
* *EndTime: 終了時刻
* *ExecTime: 実行時間 (ミリ秒)
* *IndexSize: インデックスしたドキュメント数

View file

@ -0,0 +1,42 @@
------------------
Solr の設定
------------------
Shinsuke Sugaya
------------------
2009-10-10
------------------
Solr の設定
ここでは、Fess で登録している Solr に関する設定について説明します。
Solr サーバーは設定ファイルによりグループ化されて登録されています。
* 設定方法
管理者アカウントでログイン後、メニューの Solr をクリックします。
[../../images/ja/fess_admin_solr.png] Solr の設定
* プロセス状態
更新用のサーバーがドキュメントの追加など処理中の場合、実行中として表示されます。
クロール処理が実行中の場合にはセッション ID が表示されます。
Fess サーバーをシャットダウンする場合は、実行中でないときにシャットダウンすると安全にシャットダウンすることができます。
実行中に Fess をシャットダウンした場合は、クロール処理が終了するまでプロセスが終了しない場合があります。
* 検索用、更新用サーバー
検索用、更新用に利用されているサーバーグループ名を表示されます。
* サーバーのステータス
サーバーが利用できなくなると無効のステータスになります。
たとえば、Solr サーバーにアクセスできなくなると、無効に変わります。
利用できなくなった場合は、サーバー復旧後有効にすると、利用可能な状態になります。
* Solr サーバーへのアクション
サーバーグループに対して、インデックスのコミット、最適化を発行することができます。
また、セッション ID を指定して、特定の検索対象を削除することができます。

View file

@ -0,0 +1,54 @@
------------------
ウェブ認証に関する設定
------------------
Shinsuke Sugaya
------------------
2009-10-10
------------------
ウェブ認証に関する設定
ここでは、ウェブを対象としたクロールに対してウェブ認証が必要な場合の設定方法について説明します。
Fess は BASIC 認証と DIGEST 認証に対するクロールに対応しています。
* 設定方法
管理者アカウントでログイン後、メニューのウェブ認証をクリックします。
[../../images/ja/fess_admin_webauth.png] ウェブ認証の設定
* ホスト名
認証が必要なサイトのホスト名を指定します。
省略した場合は、指定したウェブクロール設定において、任意のホスト名で適用されます。
* ポート
認証が必要なサイトのポートを指定します。
すべてのポートに対して適用したい場合は -1 を指定します。
その場合は、指定したウェブクロール設定において、任意のポートで適用されます。
* レルム
認証が必要なサイトのレルム名を指定します。
省略した場合は、指定したウェブクロール設定において、任意のレルム名で適用されます。
* 認証方法
認証方法を選択します。
BASIC 認証か DIGEST 認証を利用することができます。
* ユーザー名
認証サイトにログインするためのユーザー名を指定します。
* パスワード
認証サイトにログインするためのパスワードを指定します。
* ウェブ設定名
上記の認証設定を適用するウェブ設定名を選択します。
ウェブクロール設定を事前に登録しておく必要があります。

View file

@ -0,0 +1,92 @@
------------------
ウェブを対象としたクロールに関する設定
------------------
Takaaki SONE
Shinsuke Sugaya
------------------
2009-10-10
------------------
ウェブを対象としたクロールに関する設定
ここでは、ウェブを対象としたクロールに関する設定について説明します。
* 設定方法
管理者アカウントでログイン後、メニューのウェブをクリックします。
[../../images/ja/fess_admin_webconfig.png] ウェブクロールの設定
* 設定名
一覧ページで表示される名前です。
* URL の指定
URL は複数指定できます。
http: または https: で始まるように指定します。
たとえば、
+---------------------------------------+
http://localhost/
http://localhost:8080/
+---------------------------------------+
のように指定します。
* URL のフィルタリング
正規表現で指定することによって、特定の URL パターンをクロールの対象にしたり、除外できます。
たとえば、http://localhost/ 以下しかクロールしない場合は、対象とする URL に
+---------------------------------------+
http://localhost/.*
+---------------------------------------+
また、拡張子が png のものを対象から除外したい場合は、除外する URL に
+---------------------------------------+
.*\.png$
+---------------------------------------+
と、指定します。
複数指定することが可能です。
* 深さ
クロールしたドキュメント内に含まれるリンクを順に辿っていきますがその辿る深さを指定できます。
* 最大アクセス数
クロールして取得するドキュメント数を指定できます。
* ユーザーエージェント
クロール時に利用するユーザーエージェントを指定できます。
* スレッド数
クロールするスレッド数を指定します。
5 を指定した場合、5 個のスレッドで同時にウェブサイトをクロールします。
* 間隔
ドキュメントをクロールする間隔 (ミリ秒) です。
5000 とした場合は 1 つのスレッドが 5 秒間隔でドキュメントを取得しにいきます。
スレッド数を 5 個、間隔を 1000 ミリ秒とした場合、1 秒間で 5 ドキュメントを取得しにいくことになります。
ウェブサイトをクロールするときにはウェブサーバー側の負荷にもなるので、負荷をかけない十分な値を設定してください。
* ブラウザタイプ
選択されたブラウザタイプのデータとして、クロールしたドキュメントを登録します。
PC しか選択されていない場合は、モバイル端末で検索しても結果に表示されません。
特定のモバイル端末だけで表示したい場合にも利用できます。
* 状態
有効にすることで、設定されているクロール時刻にクロールされます。
一時的にクロールしないようにしたい場合に利用できます。

13
src/site/ja/apt/asp.apt Normal file
View file

@ -0,0 +1,13 @@
------------------
ASP/SaaSサービス
------------------
Shinsuke Sugaya
------------------
2011-01-16
サイト内検索 ASP/SaaS
{{{http://www.n2sm.net/n2search.html}N2SM, Inc.}} では商用のサポートとしてサイト内検索 ASP/SaaS サービスを提供しています。\
ASP などによるサービス提供をお求めの方は {{{http://www.n2sm.net/services/asp-service.html}N2SM, Inc.}} までご相談ください。

View file

@ -0,0 +1,23 @@
------------------
ダウンロード
------------------
Takaaki SONE
Shinsuke Sugaya
------------------
2009-10-10
------------------
安定版リリース
動作確認済の安定版リリースです。
{{{http://sourceforge.jp/projects/fess/releases/}http://sourceforge.jp/projects/fess/releases/}}
スナップショット版リリース
最新ソースコードからの自動ビルドです。
(正常に動作することは保証していません)
最新機能を試してみたい場合などにご利用ください。
{{{http://fess.codelibs.org/snapshot/}http://fess.codelibs.org/snapshot/}}

View file

@ -0,0 +1,47 @@
------------------
使い方
------------------
Takaaki SONE
Shinsuke Sugaya
------------------
2009-10-10
------------------
Fess の UI について
Fess は以下の UI を提供しています。
* ブラウザによる検索・検索結果の UI
* 携帯端末による検索・検索結果の UI
* ブラウザによる管理 UI
[]
ブラウザによる検索・検索結果の UI
一般ユーザーが Fess により検索対象になっているドキュメントを検索する UI です。
{{{http://localhost:8080/fess/}http://localhost:8080/fess/}} にアクセスすると、検索語入力欄と検索ボタンが表示されます。
検索する単語を入力して、検索ボタンをクリックすると以下のように検索結果が表示されます。
[../images//ja/fess_search_result.png] ブラウザによる検索結果の表示
携帯端末による検索・検索結果の UI
一般ユーザーが Fess により検索対象になっているドキュメントを携帯端末で検索する UI です。
携帯電話などのモバイル端末でアクセスすると、{{{http://localhost:8080/fess/mobile/}http://localhost:8080/fess/mobile/}} へリダイレクトされます。
検索する単語を入力して、検索ボタンをクリックすると以下のように検索結果が表示されます。
[../images//ja/fess_search_mobile_result.png] 携帯用検索結果の表示
ブラウザによる管理 UI
管理者が Fess を管理するための UI です。
管理 UI は携帯端末でのアクセスは対応していません。
{{{http://localhost:8080/fess/admin}http://localhost:8080/fess/admin}} にアクセスすると、ログイン画面が表示されます。
ログインすることで Fess を設定することができます。

View file

@ -0,0 +1,63 @@
------------------
簡単構築ガイド
------------------
Shinsuke Sugaya
------------------
2009-09-11
------------------
はじめに
ここでの説明は素早く Fess に触れてみたい人向けのものです。
Fess を利用するための最小限の手順を記述します。
ダウンロード
{{{http://sourceforge.jp/projects/fess/releases/}http://sourceforge.jp/projects/fess/releases/}} から最新の Fess パッケージをダウンロードします。
インストール
ダウンロードした fess-server-x.y.zip を展開します。
bin 以下にあるスクリプトに実行権を付加します。
+---------------------------------+
$ unzip fess-server-x.y.zip
$ cd fess-server-x.y
$ chmod +x bin/*.sh
+---------------------------------+
Fess の起動
startup スクリプトを実行して Fess を起動します。
+---------------------------------+
$ ./bin/startup.sh
+---------------------------------+
管理 UI にアクセス
{{{http://localhost:8080/fess/admin}http://localhost:8080/fess/admin}} にアクセスします。
管理者アカウントのユーザー名/パスワードは、admin/admin になります。
ログイン後、左側のメニューの「ウェブ」をクリックします。
新規でウェブクロールの設定情報を作ります(設定名、URL、最大アクセス数(100とか)、ブラウザタイプ(全部))。
次に左側のメニューの「クローラ全般」をクリックします。
スケジュールに数分後を設定します。
開始時刻が 10:35 am の場合は、0 35 10 * * ? とします(フォーマットは「秒 分 時 日 月 曜日 年」)。
更新すると、その時間以降にクロールが開始されます。
開始されているかどうかは、「セッション情報」で確認できます。
完了していると、セッション情報に WebIndexSize の情報が表示されます。
検索
クロール完了後、{{{http://localhost:8080/fess/}http://localhost:8080/fess/}} にアクセスし、検索すると検索結果が表示されます。
Fess の停止
shutdown スクリプトを実行して Fess を停止します。
+---------------------------------+
$ ./bin/shutdown.sh
+---------------------------------+

View file

@ -0,0 +1,62 @@
------------------
スクリーンショット
------------------
Shinsuke Sugaya
------------------
2009-11-05
------------------
一覧
* ブラウザによる検索結果の表示
[../images/ja/screenshot/fess_search_result.png] ブラウザによる検索結果の表示
* 携帯用検索結果の表示
[../images/ja/screenshot/fess_search_mobile_result.png] 携帯用検索結果の表示
* クロール全般
[../images/ja/screenshot/fess_admin_crawler.png] クロール全般
* ウェブクロールの設定
[../images/ja/screenshot/fess_admin_webconfig.png] ウェブクロールの設定
* ファイルシステムクロールの設定
[../images/ja/screenshot/fess_admin_fsconfig.png] ファイルシステムクロールの設定
* ウェブ認証の設定
[../images/ja/screenshot/fess_admin_webauth.png] ウェブ認証の設定
* パスマッピングの設定
[../images/ja/screenshot/fess_admin_pathmapping.png] パスマッピングの設定
* ブラウザタイプの設定
[../images/ja/screenshot/fess_admin_browsertype.png] ブラウザタイプの設定
* Solr の設定
[../images/ja/screenshot/fess_admin_solr.png] Solr の設定
* セッション情報
[../images/ja/screenshot/fess_admin_logfile.png] セッション情報
* セッション情報一覧
[../images/ja/screenshot/fess_admin_sessioninfo.png] セッション情報一覧
* セッション情報詳細
[../images/ja/screenshot/fess_admin_sessioninfo2.png] セッション情報詳細
* バックアップ/リストア
[../images/ja/screenshot/fess_admin_backuprestore.png] バックアップ/リストア

View file

@ -0,0 +1,36 @@
------------------
商用サポート
------------------
Shinsuke Sugaya
------------------
2009-09-09
商用サポートについて
Fess は Apache ライセンスで提供されるオープンソースで、個人や商用向けでも無料でご自由にご利用いただけます。\
{{{http://www.n2sm.net/}N2SM, Inc.}} では {{{http://www.n2sm.net/n2search.html}N2 Search}} として商用のサポートを提供しています。\
以下のようなサービスが必要な場合は商用サポートをご検討ください。
* 導入・運用コンサルティング
* 個別要件によるカスタマイズ開発 (Fess プロジェクトでは汎用的な要件には対応しますが、個別と思われる要件は対応しません)
* 大量ドキュメントのクロール対応 (50万ドキュメントを超えるような案件への適用ではFess/Solrに対する十分な知識が必要になってくるので商用サポートを推奨します)
* クラスタリング構成
* Fess サーバのチューニング
* Solr サーバのチューニング
* インデックス対象とならないファイルの調査・対応 (Fess プロジェクトでは依存するライブラリが読み取れない場合はそれ以上のことはサポートしないため、必要であれば商用サポートでご相談ください)
* 特定のバージョンの保守 (Fess プロジェクトでは最新バージョンへの修正しか行いません)
* トレーニング
* その他
[]

View file

@ -0,0 +1,33 @@
------------------
関連プロジェクト
------------------
Shinsuke Sugaya
------------------
2009-09-09
Fess が利用しているプロジェクト一覧
Fess はオープンソースのプロジェクトを応援しています。
*---+---+
| プロジェクト名 | URL |
*---+---+
| Seasar2 (S2Container) | {{{http://s2container.seasar.org/2.4/ja/}http://s2container.seasar.org/2.4/ja/}} |
*---+---+
| SAStruts | {{{http://sastruts.seasar.org/}http://sastruts.seasar.org/}} |
*---+---+
| mobylet | {{{http://mobylet.seasar.org/}http://mobylet.seasar.org/}} |
*---+---+
| S2Robot | {{{http://s2robot.sandbox.seasar.org/ja/}http://s2robot.sandbox.seasar.org/ja/}} |
*---+---+
| DBFlute | {{{http://dbflute.sandbox.seasar.org/}http://dbflute.sandbox.seasar.org/}} |
*---+---+
| Apache Solr | {{{http://lucene.apache.org/solr/}http://lucene.apache.org/solr/}} |
*---+---+
| Apache Tika | {{{http://lucene.apache.org/tika/}http://lucene.apache.org/tika/}} |
*---+---+
| SLF4J | {{{http://www.slf4j.org/}http://www.slf4j.org/}} |
*---+---+
| H2 Database | {{{http://www.h2database.com/}http://www.h2database.com/}} |
*---+---+

16
src/site/ja/apt/users.apt Normal file
View file

@ -0,0 +1,16 @@
------------------
Fess を利用しているサイト
------------------
Shinsuke Sugaya
------------------
2009-11-13
------------------
Fess を利用しているサイト
Fess を利用している検索サイト一覧です。
* {{{http://www.triumph98.com/}株式会社トライアンフ: サイト内検索}}
* {{{http://goodjob.n2hiroba.com/search/}グッジョブ: 案件グローバル検索}}

245
src/site/ja/fml/faq.fml Normal file
View file

@ -0,0 +1,245 @@
<?xml version="1.0" encoding="UTF-8"?>
<faqs xmlns="http://maven.apache.org/FML/1.0.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/FML/1.0.1 http://maven.apache.org/xsd/fml-1.0.1.xsd"
title="よくある質問"
toplink="false">
<part id="general">
<title>一般</title>
<faq id="whats-foo">
<question>
Fess って何?
</question>
<answer>
<p>
Fessは「5 分で簡単に構築可能な全文検索サーバー」です。
</p>
</answer>
</faq>
<faq id="whats-crawl">
<question>
クロールとは?
</question>
<answer>
<p>
Fess が対象ドキュメントに含まれる情報を元に次々とドキュメントをたどりながら、検索の索引(インデックス)を作成する処理のことです。
</p>
<p>
ファイルシステムをクロールする場合は、対象ディレクトリ以下のディレクトリもたどりながら、インデックスを作成します。
</p>
</answer>
</faq>
<faq id="check-load">
<question>
クロールによるサーバ負荷は大丈夫ですか?
</question>
<answer>
<p>
Fess ではクロール設定ごとに、同時クロール数やクロール間隔を指定することができます。
サーバの負荷状態を確認して、それらの値を調整してください。
</p>
</answer>
</faq>
<faq id="crawl-dynamic-page">
<question>
動的に生成されるページも検索対象にできますか?
</question>
<answer>
<p>
CGIなどで動的に生成されるようなページでも、クロールしてインデックスを作成することができます。
Fess では URL を 1 つのドキュメントとして、検索結果を出力します。
</p>
</answer>
</faq>
<faq id="include-exclude-path">
<question>
特定のパターンをもつ URLをクロール対象または対象外にできますか
</question>
<answer>
<p>
可能です。
検索対象のパスを正規表現で指定することで、検索対象または非対象にすることができます。
</p>
</answer>
</faq>
<faq id="db-crawler">
<question>
データベースはクロールできますか?
</question>
<answer>
<p>
可能です。
クロール可能なデータベースは、JDBC ドライバが利用可能なものになります。
</p>
</answer>
</faq>
</part>
<part id="search">
<title>検索</title>
<faq id="msoffice">
<question>
Word、Excel、PowerPoint などのファイルは検索できますか?
</question>
<answer>
<p>
可能です。
</p>
</answer>
</faq>
<faq id="pdf">
<question>
PDFファイルは検索できますか
</question>
<answer>
<p>
可能です。
</p>
</answer>
</faq>
<faq id="search-field">
<question>
ファイルの種類やサイトを指定した検索は可能ですか?
</question>
<answer>
<p>
可能です。
<a href="4.0/user/search-field.html">フィールド指定検索</a>を参照してください。
</p>
</answer>
</faq>
<faq id="design-customize">
<question>
デザインをカスタマイズできますか?
</question>
<answer>
<p>
管理画面からログインして、デザインから編集することができます。
</p>
</answer>
</faq>
<faq id="path-mapping">
<question>
クロールした URL と検索結果の URL を、別のものにできますか?
</question>
<answer>
<p>
パスマッピング機能を利用することで、インデックス生成時に指定された正規表現にマッチした箇所を置き換えて、検索結果に表示することができます。
</p>
</answer>
</faq>
<faq id="max-field-length">
<question>
文量が多いドキュメントで文末の単語が検索対象にならないようですが…
</question>
<answer>
<p>
Solr の設定で対応することができます。solr/core1/conf/solrconfig.xml の maxFieldLength を増やしてください。
増やしすぎるとメモリを消費するので注意してください。
</p>
</answer>
</faq>
<faq id="max-field-length">
<question>
ローカルファイル(file:/c:/hoge/...)の検索結果リンクをクリックしても表示されません。
</question>
<answer>
<p>
ローカルファイルを検索するためには、<a href="6.0/config/desktop-search.html">デスクトップ検索機能</a>を利用してください。
</p>
</answer>
</faq>
</part>
<part id="crawling">
<title>クロール</title>
<faq id="license">
<question>
共有フォルダクロール (smb://) でクロールされません
</question>
<answer>
<p>
smb://server/folder/ というようにフォルダを指定している場合に、最後に / が入っているでしょうか?
フォルダ指定で / がない場合はクロールされません。
</p>
</answer>
</faq>
</part>
<part id="license">
<title>ライセンス</title>
<faq id="license">
<question>
ライセンスは何ですか?
</question>
<answer>
<p>
Apache ライセンスです。
</p>
</answer>
</faq>
<faq id="free">
<question>
無料ですか?
</question>
<answer>
<p>
無料でご利用いただけます。
ただし、利用は自己責任でお願いいたします。
サポートサービスが必要な場合は、<a href="support-services.html">商用サポート</a>をご検討ください。
</p>
</answer>
</faq>
</part>
<part id="configure">
<title>構成</title>
<faq id="install-on-tomcat">
<question>
既に Tomcat を利用していますがそこに Fess をインストールできますか?
</question>
<answer>
<p>
可能です。
<a href="4.0/config/install-on-tomcat.html">既存の Tomcat にインストール</a>を参照してください。
</p>
</answer>
</faq>
<faq id="redundant">
<question>
冗長化は可能ですか?
</question>
<answer>
<p>
可能です。
Fess が利用している検索サーバの Apache Solr は標準では同梱して配布しています。
Fess と Apache Solr は疎結合であり、複数の Solr サーバの構成も可能です。
クロール対象が多いような場合は、Fess を複数を置き同時にクロールさせて負荷分散することも可能です。
</p>
</answer>
</faq>
</part>
<part id="others">
<title>その他</title>
<faq id="i-have-question">
<question>
質問はどこに投げれば良いですか?
</question>
<answer>
<p>
Fessのメーリングリストをご利用ください。
過去のやりとりの内容などは<a href="http://sourceforge.jp/projects/fess/lists/archive/user/">アーカイブ</a>をご覧ください。
</p>
</answer>
</faq>
<faq id="support-service">
<question>
商用サポートはありますか?
</question>
<answer>
<p>
<a href="http://fess.codelibs.org/ja/support-services.html">商用サポート</a>をご覧ください。
</p>
</answer>
</faq>
</part>
</faqs>

View file

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ブラウザタイプの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ブラウザタイプの設定">
<p>ここでは、ブラウザタイプに関わる設定について説明します。 ブラウザタイプは検索結果データに付加され、閲覧ブラウザの種類ごとに検索結果を出し分けることができます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのブラウザタイプをクリックします。</p>
<img src="/images/ja/2.0/browserType-1.png" alt="ブラウザタイプの設定" />
</subsection>
<subsection name="ブラウザタイプ">
<p>表示名と値を設定できます。 新規に閲覧端末を増やしたい場合などに利用します。 特別なカスタマイズが必要場合にしか、利用する必要はありません。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>クロール全般の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="クロール全般の設定">
<p>ここでは、クロール全般に関わる設定について説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのクロール全般をクリックします。</p>
<img src="/images/ja/2.0/crawl-1.png" alt="クロール全般"/>
<p>レプリケーション機能を有効にすると、生成済みのインデックスのパスを指定することができます。</p>
<img src="/images/ja/2.0/crawl-2.png" alt="レプリケーション機能"/>
</subsection>
<subsection name="スケジュール: クロールの間隔についての設定">
<p>ウェブサイトやファイルシステムに対してクロールを行う間隔を設定できます。 デフォルトでは以下のようになっています。</p>
<source><![CDATA[
0 0 0 * * ?
]]></source>
<p>数字は、左から、秒、分、時、日、月、曜日 を表します。 記述形式は Unix の cron の設定に似ています。 この例だと、毎日午前0時0分にクロールが行われます。</p>
<p>以下に記述方法の例を示します。</p>
<table class="table table-striped table-bordered table-condensed">
<tbody>
<tr class="a">
<td align="left">0 0 12 * * ?</td>
<td align="left">毎日 12pm に起動</td>
</tr>
<tr class="b">
<td align="left">0 15 10 ? * *</td>
<td align="left">毎日 10:15am に起動</td>
</tr>
<tr class="a">
<td align="left">0 15 10 * * ?</td>
<td align="left">毎日 10:15am に起動</td>
</tr>
<tr class="b">
<td align="left">0 15 10 * * ? *</td>
<td align="left">毎日 10:15am に起動</td>
</tr>
<tr class="a">
<td align="left">0 15 10 * * ? 2005</td>
<td align="left">2009 年の毎日 10:15am に起動</td>
</tr>
<tr class="b">
<td align="left">0 * 14 * * ?</td>
<td align="left">毎日 2:00pm-2:59pm で 1 分毎に起動</td>
</tr>
<tr class="a">
<td align="left">0 0/5 14 * * ?</td>
<td align="left">毎日 2:00pm-2:59pm で 5 分毎に起動</td>
</tr>
<tr class="b">
<td align="left">0 0/5 14,18 * * ?</td>
<td align="left">毎日 2:00pm-2:59pm と 6:00pm-6:59pm で 5 分毎に起動</td>
</tr>
<tr class="a">
<td align="left">0 0-5 14 * * ?</td>
<td align="left">毎日 2:00pm-2:05pm で 1 分毎に起動</td>
</tr>
<tr class="b">
<td align="left">0 10,44 14 ? 3 WED</td>
<td align="left">3 月の水曜日の 2:10pm と 2:44pm に起動</td>
</tr>
<tr class="a">
<td align="left">0 15 10 ? * MON-FRI</td>
<td align="left">月曜日から金曜日までで 10:15am に起動</td>
</tr>
</tbody>
</table>
<p>秒まで設定できますが、デフォルトの設定では 60 秒間隔で実行するかどうかを確認しています。 秒まで正確に設定したい場合や 1 時間単位で確認すれば十分な場合などは、webapps/fess/WEB-INF/classes/chronosCustomize.dicon の taskScanIntervalTime の値をカスタマイズしてください。</p>
</subsection>
<subsection name="モバイル変換">
<p>検索結果のウェブサイトが PC 用だった場合、モバイル端末で正しく表示できないかもしれません。 そのような場合に、モバイル変換を選択していると、PC サイトをモバイル端末用に変換して表示することができます。 Google を選択した場合、Google Wireless Transcoder により、携帯向けにコンテンツを表示することができます。 たとえば、PC 用サイトを検索対象にして結果をモバイル端末でも閲覧したい場合、モバイル端末向け検索結果一覧で検索結果のリンクが Google Wireless Transcoder に渡すリンクになります。 モバイル変換を利用することでモバイル端末でもスムーズな検索を利用することができます。</p>
</subsection>
<subsection name="レプリケーション機能">
<p>レプリケーション機能を有効にすることで、既に生成済みの Solr インデックスをコピーして適用することができます。たとえば、クロールとインデックス化を別なサーバー上で行い、フロントに置く検索サーバーでは検索だけをしたい場合などに利用することができます。</p>
</subsection>
<subsection name="インデックスのコミット、最適化">
<p>クロール後、データは Solr に対して登録されます。 インデックスのコミットまたは最適化することで、その登録されたデータが有効になります。 インデックスの最適化が選択されていれば、Solr に対して optimize が発行され、コミットを選択した場合は commit が発行されます。</p>
</subsection>
<subsection name="サーバー切り替え">
<p>Fess は複数の Solr サーバーをグループとしてまとめることができ、そのグループを複数管理できます。 更新用と検索用の Solr サーバーグループは異なるグループを利用します。 たとえば、2 つのグループがあった場合、更新用がグループ 2 を利用し、検索用がグループ 1 を利用します。 サーバー切り替えを有効にしている場合は、クロールが完了した後に更新用がグループ 1 になり、検索用がグループ 2 に切り替わります。複数の Solr サーバーグループを登録している場合にだけ有効です。</p>
</subsection>
<subsection name="ドキュメント数毎にコミット">
<p>Fess ではインデックス化のパフォーマンスを上げるためにクロールしながら、20 件単位でドキュメントを Solr に対して送信します。 コミットせずにドキュメントを追加しつづけると、Solr 上でのドキュメント追加のパフォーマンスが低下するため、ここで指定した値ごとに Solr に対してドキュメントのコミットを発行します。 デフォルトでは 1000 件ドキュメントを追加したら、コミットされます。</p>
</subsection>
<subsection name="同時実行のクロール設定数">
<p>Fess のドキュメントクロールはウェブクロール、ファイルシステムクロールの順に行われます。 それぞれのクロールにおいて、ここで指定した値の数だけ、設定したクロール先を複数同時に実行することができます。 たとえば、同時実行のクロール設定数を 3 として、ウェブクロールに設定 1 から設定 10 まで登録してある場合、クロール実行時には設定 1 から設定 3 までの 3 つが実行されます。 それらのどれかのクロールが完了すると、設定 4 のクロールが開始されます。 同様に、設定 10 まで 1 つ完了するごとに 1 つ起動していきます。</p>
<p>クロール設定でスレッド数を指定することができますが、ここでの同時実行のクロール設定数は起動するスレッド数を示すものではありません。 たとえば、同時実行のクロール設定数が 3 で、各クロール設定のスレッド数を 5 としている場合は、3 x 5 = 15 のスレッド数が起動してクロールすることになります。</p>
</subsection>
<subsection name="インデックスの有効期限">
<p>インデックスされているデータを新規データ登録後に自動的に削除することができます。 インデックスの有効期限で 5 日を選択している場合は、5 日以上前に登録して更新がなかったものが削除されます。 コンテンツが削除されてしまったデータなどを検索対象から外す場合などに利用できます。</p>
</subsection>
<subsection name="スナップショットパス">
<p>レプリケーション機能を有効にした場合に、スナップショットパスとして指定されたインデックスディレクトリからインデックス情報をコピーして適用されます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>セッション情報の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="セッション情報の設定">
<p>ここでは、セッション情報に関わる設定について説明します。 1 回のクロールした結果を 1 つのセッション情報として保存されます。 実行した時間やインデックスされた数を確認することができます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのセッション情報をクリックします。</p>
</subsection>
<subsection name="セッション情報一覧">
<img src="/images/ja/2.0/crawlingSession-1.png" alt="セッション情報一覧"/>
<p>すべて削除リンクをクリックすると実行中でないすべてのセッション情報を削除することができます。</p>
</subsection>
<subsection name="セッション情報詳細">
<img src="/images/ja/2.0/crawlingSession-2.png" alt="セッション情報詳細"/>
<p>セッション ID を指定してクロール内容を確認できます。</p>
<ul>
<li>Cralwer*: クロール全体に関する情報</li>
<li>FsCrawl*: ファイルシステムのクロールに関する情報</li>
<li>WebCrawl*: ウェブのクロールに関する情報</li>
<li>Optimize*: Solr サーバーに発行した最適化に関する情報</li>
<li>Commit*: Solr サーバーに発行したコミットに関する情報</li>
<li>*StartTime: 開始時刻</li>
<li>*EndTime: 終了時刻</li>
<li>*ExecTime: 実行時間 (ミリ秒)</li>
<li>*IndexSize: インデックスしたドキュメント数</li>
</ul>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>設定情報のバックアップとリストア</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="設定情報のバックアップとリストア">
<p>ここでは、Fess の設定情報のバックアップとリストア方法について説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのバックアップ/リストアをクリックします。</p>
<img src="/images/ja/2.0/data-1.png" alt="バックアップ/リストア"/>
</subsection>
<subsection name="設定のバックアップ">
<p>ダウンロードリンクをクリックすると、Fess の設定情報を XML 形式で出力します。 保存される設定情報は以下のものです。</p>
<ul>
<li>クロール全般の設定</li>
<li>ウェブクロール設定</li>
<li>ファイルシステムクロール設定</li>
<li>パスマッピング</li>
<li>ウェブ認証</li>
<li>対応ブラウザ</li>
<li>セッション情報</li>
</ul>
<p>Solr 内のインデックスデータやクロール中のデータはバックアップ対象にはなりません。 それらのデータは Fess の設定情報をリストア後、クロールすることで再生成することができます。</p>
</subsection>
<subsection name="設定のリストア">
<p>バックアップで出力した XML をアップロードすることで設定情報を復元することができます。 XML ファイルを指定してデータのリストアボタンをクリックしてください。</p>
<p>データの上書きを有効にすると、既に同じデータがある場合は既存のデータの更新を行います。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>デザインの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="デザインの設定">
<p>ここでは、検索画面のデザインに関する設定について説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのデザインをクリックします。</p>
<img src="/images/ja/2.0/design-1.png" alt="デザイン"/>
<p>以下の画面で検索画面を編集することができます。</p>
<img src="/images/ja/2.0/design-2.png" alt="JSP の編集画面"/>
</subsection>
<subsection name="画像ファイル">
<p>検索画面で使用する画像ファイルをアップロードすることができます。サポートしている画像ファイル名は jpg、gif、png です。</p>
</subsection>
<subsection name="画像ファイル名">
<p>アップロードする画像ファイルにファイル名を指定したい場合に利用します。省略した場合はアップロードしたファイル名が利用されます。</p>
</subsection>
<subsection name="デザイン JSP ファイル">
<p>検索画面の JSP ファイルを編集することができます。対象の JSP ファイルの編集ボタンを押下することで、現在の JSP ファイルを編集することができます。また、デフォルトを使用ボタンを押下すると、インストール時の JSP ファイルとして編集することができます。編集画面で更新ボタンで保存することで、変更が反映されます。</p>
<p>以下に記述方法の例を示します。</p>
<table class="table table-striped table-bordered table-condensed">
<tbody>
<tr class="a">
<td align="left">トップページ (フレーム)</td>
<td align="left">検索トップページの JSP ファイルです。この JSP ファイルが各部分の JSP ファイルを include しています。</td>
</tr>
<tr class="b">
<td align="left">トップページ (Headタグ内)</td>
<td align="left">検索トップページの head タグ内を表現する JSP ファイルです。meta タグ、title タグ、script タグなどを編集したい場合に変更します。</td>
</tr>
<tr class="a">
<td align="left">トップページ (コンテンツ)</td>
<td align="left">検索トップページの body タグ内を表現する JSP ファイルです。</td>
</tr>
<tr class="b">
<td align="left">検索結果ページ (フレーム)</td>
<td align="left">検索結果一覧ページの JSP ファイルです。この JSP ファイルが各部分の JSP ファイルを include しています。</td>
</tr>
<tr class="a">
<td align="left">検索結果ページ (Headタグ内)</td>
<td align="left">検索結果一覧ページの head タグ内を表現する JSP ファイルです。meta タグ、title タグ、script タグなどを編集したい場合に変更します。</td>
</tr>
<tr class="b">
<td align="left">検索結果ページ (ヘッダー)</td>
<td align="left">検索結果一覧ページのヘッダー部分を表現する JSP ファイルです。ページ上部の検索フォームなどが含まれています。</td>
</tr>
<tr class="a">
<td align="left">検索結果ページ (フッター)</td>
<td align="left">検索結果一覧ページのフッター部分を表現する JSP ファイルです。ページ下部のコピーライトが含まれています。</td>
</tr>
<tr class="b">
<td align="left">検索結果ページ (コンテンツ)</td>
<td align="left">検索結果一覧ページの検索結果部分を表現する JSP ファイルです。検索結果があるときに利用される JSP ファイルです。検索結果の表現をカスタマイズしたい場合に変更します。</td>
</tr>
<tr class="a">
<td align="left">検索結果ページ (結果なし)</td>
<td align="left">検索結果一覧ページの検索結果部分を表現する JSP ファイルです。検索結果がないときに利用される JSP ファイルです。</td>
</tr>
</tbody>
</table>
<p>携帯用画面も PC 用と同様に編集することができます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ファイルシステムを対象としたクロールに関する設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ファイルシステムを対象としたクロールに関する設定">
<p>ここでは、ファイルシステムを対象としたクロールに関する設定について説明します。</p>
<p>Fess で数十万件以上のドキュメントをインデックス化したい場合は、1 つのクロール設定を数万件以下にすることを推奨しています。1 つのクロール設定で数十万件を対象すると、インデックス化のパフォーマンスが低下する場合があります。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのファイルシステムをクリックします。</p>
<img src="/images/ja/2.0/fileCrawlingConfig-1.png" alt="ファイルシステムクロールの設定"/>
</subsection>
<subsection name="設定名">
<p>一覧ページで表示される名前です。</p>
</subsection>
<subsection name="パスの指定">
<p>パスは複数指定できます。 file: で始まるように指定します。 たとえば、</p>
<source><![CDATA[
file:/home/taro/
file:/home/documents/
]]></source>
<p>のように指定します。 指定されたディレクトリ以下を巡回します。</p>
<p>Windows 環境の場合は URI で記述する必要があるので、c:\Documents\taro というパスであれば file:/c:/Documents/taro と指定します。</p>
</subsection>
<subsection name="パスのフィルタリング">
<p>正規表現で指定することによって、特定のパスパターンをクロールや検索の対象にしたり、除外できます。</p>
<table>
<tbody>
<tr>
<th>クロール対象とするパス</th>
<td>指定された正規表現のパスをクロールします。</td>
</tr>
<tr>
<th>クロール対象から除外するパス</th>
<td>指定された正規表現のパスをクロール対象としません。クロール対象とするパスが指定されていても、ここでの指定が優先されます。</td>
</tr>
<tr>
<th>検索対象とするパス</th>
<td>指定された正規表現のパスを検索対象します。検索除外対象とするパスと指定されていても、ここでの指定が優先されます。</td>
</tr>
<tr>
<th>検索対象から除外するパス</th>
<td>指定された正規表現のパスを検索対象としません。クロール対象から除外してしまうと以降の全てのリンクが検索対象とすることができませんが、クロール対象の一部だけ検索対象としない場合に指定します。</td>
</tr>
</tbody>
</table>
<p>たとえば、/home/ 以下しかクロールしない場合は、対象とするパスに</p>
<source><![CDATA[
file:/home/.*
]]></source>
<p>また、拡張子が png のものを対象から除外したい場合は、除外するパスに</p>
<source><![CDATA[
.*\.png$
]]></source>
<p>と指定します。 改行をすることで複数指定することが可能です。</p>
<p>指定方法はjava.io.File が扱う URI に従います。以下のようになります。</p>
<source><![CDATA[
/home/taro -> file:/home/taro
c:\memo.txt -> file:/c:/memo.txt
\\server\memo.txt -> file:////server/memo.txt
]]></source>
</subsection>
<subsection name="深さ">
<p>ディレクトリ階層の深さを指定します。</p>
</subsection>
<subsection name="最大アクセス数">
<p>クロールして取得するドキュメント数を指定できます。</p>
</subsection>
<subsection name="スレッド数">
<p>クロールするスレッド数を指定します。 5 を指定した場合、5 個のスレッドで同時にウェブサイトをクロールします。</p>
</subsection>
<subsection name="間隔">
<p>ドキュメントをクロールする間隔です。 5000 とした場合は 1 つのスレッドが 5 秒間隔でドキュメントを取得しにいきます。</p>
<p>スレッド数を 5 個、間隔を 1000 ミリ秒とした場合、1 秒間で 5 ドキュメントを取得しにいくことになります。</p>
</subsection>
<subsection name="ブースト値">
<p>このクロール設定で検索対象とした URL に重みを付けることができます。検索結果において、他のものより上に表示したい場合に利用します。標準では 1 です。大きい値ほど優先されて、検索結果の上位に表示されます。他の結果より確実に優先して表示したい場合は、10000 などの十分に大きな値を指定します。</p>
<p>指定できる値は 0 以上の整数です。この値は Solr にドキュメントを追加する際のブースト値として利用されます。</p>
</subsection>
<subsection name="ブラウザタイプ">
<p>選択されたブラウザタイプのデータとして、クロールしたドキュメントを登録します。 PC しか選択されていない場合は、モバイル端末で検索しても結果に表示されません。 特定のモバイル端末だけで表示したい場合にも利用できます。</p>
</subsection>
<subsection name="ロール">
<p>利用するユーザーが特定のロールのときだけに検索結果に表示できるように制御することができます。ロールはあらかじめ設定しておく必要があります。>たとえば、ポータルサーバーなどログインを必要とするシステムにおいて、利用するユーザーにより検索結果を出し分けたい場合に利用できます。</p>
</subsection>
<subsection name="ラベル">
<p>検索結果をラベル付けすることができます。ラベルを指定すると、検索画面において、ラベルごとの検索などが可能になります。</p>
</subsection>
<subsection name="状態">
<p>有効にすることで、設定されているクロール時刻にクロールされます。 一時的にクロールしないようにしたい場合に利用できます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>管理 UI ガイド</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Fess 2.0 管理 UI ガイド">
<p>ここでは、Fess 2.0 の管理 UI に関する説明です。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ラベルの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ラベルの設定">
<p>ここでは、ラベルに関する設定について説明します。ラベルはクロール設定で選択することで、検索結果に表示されるドキュメントを分類することができます。ラベルを登録している場合には、検索語入力欄の右側にラベル選択のプルダウンボックスが表示されます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのラベルをクリックします。</p>
<img src="/images/ja/2.0/labelType-1.png" alt="ラベルの一覧"/>
<img src="/images/ja/2.0/labelType-2.png" alt="ラベルの設定"/><!-- TODO -->
</subsection>
<subsection name="表示名">
<p>検索時のラベル選択プルダウンボックスに表示される名前を指定します。</p>
</subsection>
<subsection name="値">
<p>ドキュメントを分類するときの識別子を指定します。この値は Solr に送信されます。英数字で指定してください。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ログファイルのダウンロード</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ログファイルのダウンロード">
<p>ここでは、Fess で出力されるログファイルのダウンロードについて説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのログファイルをクリックします。</p>
<img src="/images/ja/2.0/log-1.png" alt="セッション情報"/>
</subsection>
<subsection name="ダウンロード">
<p>表示されているログファイル名をクリックすると、ログファイルをダウンロードすることができます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>重複ホストの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="重複ホストの設定">
<p>ここでは、重複ホストに関する設定について説明します。重複ホストはクロール時に異なるホスト名を同一のものとして扱いたいときに利用します。たとえば、www.example.com と example.com を同じサイトとして扱いたい場合などで利用できます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューの重複ホストをクリックします。</p>
<img src="/images/ja/2.0/overlappingHost-1.png" alt="重複ホストの一覧"/>
<img src="/images/ja/2.0/overlappingHost-2.png" alt="重複ホストの設定"/><!-- TODO -->
</subsection>
<subsection name="正規名">
<p>正規ホスト名を指定します。重複ホスト名は正規ホスト名に置き換えます。</p>
</subsection>
<subsection name="重複名">
<p>重複しているホスト名を指定します。置き換えたいホスト名を指定します。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>パスマッピングの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="パスマッピングの設定">
<p>ここでは、パスマッピングに関する設定について説明します。 パスマッピングは検索結果に表示するリンクを置き換えたい場合などに利用することができます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのパスマッピングをクリックします。</p>
<img src="/images/ja/2.0/pathMapping-1.png" alt="パスマッピングの一覧"/>
<img src="/images/ja/2.0/pathMapping-2.png" alt="パスマッピングの設定"/><!-- TODO -->
</subsection>
<subsection name="パスマッピング">
<p>パスマッピングは指定した正規表現でマッチする部分を置き換え文字列で置換します。 ローカルなファイルシステムをクロールした場合、環境によっては検索結果のリンクが有効でない場合があります。 そのような場合にパスマッピングを利用して、検索結果のリンクを制御できます。 パスマッピングは複数指定できます。</p>
</subsection>
<subsection name="正規表現">
<p>置換したい文字列を指定します。記述方法は <a href="http://java.sun.com/javase/ja/6/docs/ja/api/java/util/regex/Pattern.html">Java 6 の正規表現</a>に従います。</p>
</subsection>
<subsection name="置換文字">
<p>一致した正規表現を置き換える文字列を指定します。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>リクエストヘッダーの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="リクエストヘッダーの設定">
<p>ここでは、リクエストヘッダーに関する設定について説明します。リクエストヘッダーの機能はドキュメントをクロールして取得するときのリクエストに付加するリクエストヘッダー情報になります。たとえば、認証システムでヘッダー情報を見て、特定の値があれば自動でログインした状態にするなどの場合に利用できます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのリクエストヘッダーをクリックします。</p>
<img src="/images/ja/2.0/requestHeader-1.png" alt="リクエストヘッダーの一覧"/>
<img src="/images/ja/2.0/requestHeader-2.png" alt="リクエストヘッダーの設定"/><!-- TODO -->
</subsection>
<subsection name="名前">
<p>リクエストに付加するときのリクエストヘッダー名を指定します。</p>
</subsection>
<subsection name="値">
<p>リクエストに付加するときのリクエストヘッダー値を指定します。</p>
</subsection>
<subsection name="ウェブ設定名">
<p>リクエストヘッダーを付加するウェブクロール設定名を選択します。選択したクロール設定だけでリクエストヘッダーに付加されます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ロールの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ロールの設定">
<p>ここでは、ロールに関する設定について説明します。ロールはクロール設定で選択することで、検索結果に表示されるドキュメントを分類することができます。利用方法については、<a href="../config/role-setting.html">ロールの設定</a>を参照してください。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのロールをクリックします。</p>
<img src="/images/ja/2.0/roleType-1.png" alt="ロールの一覧"/>
<img src="/images/ja/2.0/roleType-2.png" alt="ロールの設定"/><!-- TODO -->
</subsection>
<subsection name="表示名">
<p>一覧に表示される名前を指定します。</p>
</subsection>
<subsection name="値">
<p>ドキュメントを分類するときの識別子を指定します。この値は Solr に送信されます。英数字で指定してください。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>システムの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="システムの設定">
<p>ここでは、Fess で登録している Solr に関する設定について説明します。 Solr サーバーは設定ファイルによりグループ化されて登録されています。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューの Solr をクリックします。</p>
<img src="/images/ja/2.0/system-1.png" alt="システムの設定"/>
</subsection>
<subsection name="プロセス状態">
<p>更新用のサーバーがドキュメントの追加など処理中の場合、実行中として表示されます。 クロール処理が実行中の場合にはセッション ID が表示されます。 Fess サーバーをシャットダウンする場合は、実行中でないときにシャットダウンすると安全にシャットダウンすることができます。 実行中に Fess をシャットダウンした場合は、クロール処理が終了するまでプロセスが終了しない場合があります。</p>
</subsection>
<subsection name="検索用、更新用サーバー">
<p>検索用、更新用に利用されているサーバーグループ名を表示されます。</p>
</subsection>
<subsection name="サーバーのステータス">
<p>サーバーが利用できなくなると無効のステータスになります。 たとえば、Solr サーバーにアクセスできなくなると、無効に変わります。 利用できなくなった場合は、サーバー復旧後有効にすると、利用可能な状態になります。</p>
</subsection>
<subsection name="Solr サーバーへのアクション">
<p>サーバーグループに対して、インデックスのコミット、最適化を発行することができます。 また、セッション ID を指定して、特定の検索対象を削除することができます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ウェブ認証に関する設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ウェブ認証に関する設定">
<p>ここでは、ウェブを対象としたクロールに対してウェブ認証が必要な場合の設定方法について説明します。 Fess は BASIC 認証と DIGEST 認証に対するクロールに対応しています。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのウェブ認証をクリックします。</p>
<img src="/images/ja/2.0/webAuthentication-1.png" alt="ウェブ認証の設定"/>
</subsection>
<subsection name="ホスト名">
<p>認証が必要なサイトのホスト名を指定します。 省略した場合は、指定したウェブクロール設定において、任意のホスト名で適用されます。</p>
</subsection>
<subsection name="ポート">
<p>認証が必要なサイトのポートを指定します。 すべてのポートに対して適用したい場合は -1 を指定します。 その場合は、指定したウェブクロール設定において、任意のポートで適用されます。</p>
</subsection>
<subsection name="レルム">
<p>認証が必要なサイトのレルム名を指定します。 省略した場合は、指定したウェブクロール設定において、任意のレルム名で適用されます。</p>
</subsection>
<subsection name="認証方法">
<p>認証方法を選択します。 BASIC 認証か DIGEST 認証を利用することができます。</p>
</subsection>
<subsection name="ユーザー名">
<p>認証サイトにログインするためのユーザー名を指定します。</p>
</subsection>
<subsection name="パスワード">
<p>認証サイトにログインするためのパスワードを指定します。</p>
</subsection>
<subsection name="ウェブ設定名">
<p>上記の認証設定を適用するウェブ設定名を選択します。 ウェブクロール設定を事前に登録しておく必要があります。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ウェブを対象としたクロールに関する設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ウェブを対象としたクロールに関する設定">
<p>ここでは、ウェブを対象としたクロールに関する設定について説明します。</p>
<p>Fess で数十万件以上のドキュメントをインデックス化したい場合は、1 つのクロール設定を数万件以下にすることを推奨しています。1 つのクロール設定で数十万件を対象すると、インデックス化のパフォーマンスが低下する場合があります。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのウェブをクリックします。</p>
<img src="/images/ja/2.0/webCrawlingConfig-1.png" alt="ウェブクロールの設定"/>
</subsection>
<subsection name="設定名">
<p>一覧ページで表示される名前です。</p>
</subsection>
<subsection name="URL の指定">
<p>URL は複数指定できます。 http: または https: で始まるように指定します。 たとえば、</p>
<source><![CDATA[
http://localhost/
http://localhost:8080/
]]></source>
<p>のように指定します。</p>
</subsection>
<subsection name="URL のフィルタリング">
<p>正規表現で指定することによって、特定の URL パターンをクロールや検索の対象にしたり、除外できます。</p>
<table>
<tbody>
<tr>
<th>クロール対象とする URL</th>
<td>指定された正規表現の URL をクロールします。</td>
</tr>
<tr>
<th>クロール対象から除外するURL</th>
<td>指定された正規表現の URL をクロール対象としません。クロール対象とする URL が指定されていても、ここでの指定が優先されます。</td>
</tr>
<tr>
<th>検索対象とするURL</th>
<td>指定された正規表現の URL を検索対象します。検索除外対象とする URL と指定されていても、ここでの指定が優先されます。</td>
</tr>
<tr>
<th>検索対象から除外するURL</th>
<td>指定された正規表現の URL を検索対象としません。クロール対象から除外してしまうと以降の全てのリンクが検索対象とすることができませんが、クロール対象の一部だけ検索対象としない場合に指定します。</td>
</tr>
</tbody>
</table>
<p>たとえば、http://localhost/ 以下しかクロールしない場合は、クロール対象とする URL に</p>
<source><![CDATA[
http://localhost/.*
]]></source>
<p>また、拡張子が png のものを対象から除外したい場合は、除外する URL に</p>
<source><![CDATA[
.*\.png$
]]></source>
<p>と指定します。改行することで複数指定することが可能です。</p>
</subsection>
<subsection name="深さ">
<p>クロールしたドキュメント内に含まれるリンクを順に辿っていきますがその辿る深さを指定できます。</p>
</subsection>
<subsection name="最大アクセス数">
<p>クロールして取得するドキュメント数を指定できます。</p>
</subsection>
<subsection name="ユーザーエージェント">
<p>クロール時に利用するユーザーエージェントを指定できます。</p>
</subsection>
<subsection name="スレッド数">
<p>クロールするスレッド数を指定します。 5 を指定した場合、5 個のスレッドで同時にウェブサイトをクロールします。</p>
</subsection>
<subsection name="間隔">
<p>ドキュメントをクロールする間隔 (ミリ秒) です。 5000 とした場合は 1 つのスレッドが 5 秒間隔でドキュメントを取得しにいきます。</p>
<p>スレッド数を 5 個、間隔を 1000 ミリ秒とした場合、1 秒間で 5 ドキュメントを取得しにいくことになります。 ウェブサイトをクロールするときにはウェブサーバー側の負荷にもなるので、負荷をかけない十分な値を設定してください。</p>
</subsection>
<subsection name="ブースト値">
<p>このクロール設定で検索対象とした URL に重みを付けることができます。検索結果において、他のものより上に表示したい場合に利用します。標準では 1 です。大きい値ほど優先されて、検索結果の上位に表示されます。他の結果より確実に優先して表示したい場合は、10000 などの十分に大きな値を指定します。</p>
<p>指定できる値は 0 以上の整数です。この値は Solr にドキュメントを追加する際のブースト値として利用されます。</p>
</subsection>
<subsection name="ブラウザタイプ">
<p>選択されたブラウザタイプのデータとして、クロールしたドキュメントを登録します。 PC しか選択されていない場合は、モバイル端末で検索しても結果に表示されません。 特定のモバイル端末だけで表示したい場合にも利用できます。</p>
</subsection>
<subsection name="ロール">
<p>利用するユーザーが特定のロールのときだけに検索結果に表示できるように制御することができます。ロールはあらかじめ設定しておく必要があります。たとえば、ポータルサーバーなどログインを必要とするシステムにおいて、利用するユーザーにより検索結果を出し分けたい場合に利用できます。</p>
</subsection>
<subsection name="ラベル">
<p>検索結果をラベル付けすることができます。ラベルを指定すると、検索画面において、ラベルごとの検索などが可能になります。</p>
</subsection>
<subsection name="状態">
<p>有効にすることで、設定されているクロール時刻にクロールされます。 一時的にクロールしないようにしたい場合に利用できます。</p>
</subsection>
</section>
<section name="その他">
<subsection name="サイトマップ">
<p>Fess ではサイトマップファイルをクロールして、その中に定義されている URL をクロール対象とすることができます。サイトマップは <a href="http://www.sitemaps.org/">http://www.sitemaps.org/</a> の仕様に従います。利用可能なフォーマットは XML Sitemaps、XML Sitemaps Index、テキスト (URL を改行で記述したもの) です</p>
<p>サイトマップは URL に指定します。サイトマップは普通の XML ファイルやテキストであるため、クロール時にその URL が普通の XML ファイルなのかサイトマップなのかが区別できません。ですので、デフォルトでは sitemap.*.xml、sitemap.*.gz、sitemap.*txt であるファイル名の URL であればサイトマップとして処理します(webapps/fess/WEB-INF/classes/s2robot_rule.dicon でカスタマイズは可能)。</p>
<p>HTML ファイルをクロールするとリンクが次のクロール対象になりますが、サイトマップファイルをクロールするとその中の URL が次のクロール対象になります。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>設定ガイド</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Fess 2.0 設定ガイド">
<p>ここでは、Fess 2.0 の設定に関する説明です。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ログの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ログの設定">
<p>Fess の出力ログは webapps/fess/WEB-INF/logs/fess.out に出力されます (Solr に関するログは logs/catalina.out に出力されています)。fess.out に出力する内容は、webapps/fess/WEB-INF/classes/log4j.xml で設定します。デフォルトでは INFO レベルとして出力しています。</p>
<p>たとえば、Fess が Solr に対してドキュメントを投入処理をするログをより出力したい場合は log4j.xml で以下の部分をコメントアウトから外します。</p>
<source><![CDATA[
<logger name="jp.sf.fess.solr" >
<level value ="debug" />
</logger>
]]></source>
</section>
</body>
</document>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>使用メモリー関連の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ヒープメモリーの最大値変更">
<p>クロール設定の内容によっては以下のような OutOfMemory エラーが発生する場合があります。</p>
<source><![CDATA[
java.lang.OutOfMemoryError: Java heap space
]]></source>
<p>発生した場合は ヒープメモリの最大値を増やしてください。 bin/setenv.[sh|bat] に -Xmx1024m のように変更します(この場合は最大値を 1024M に設定)。</p>
<source><![CDATA[
Windowsの場合
...-Dpdfbox.cjk.support=true -Xmx1024m
Unixの場合
...-Dpdfbox.cjk.support=true -Xmx1024m"
]]></source>
</section>
</body>
</document>

View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>携帯端末情報の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="携帯端末情報の更新">
<p>携帯端末情報は<a class="externalLink" href="http://valueengine.jp/">ValueEngine社</a>より提供されるものを利用しています。最新の携帯端末情報を利用したい場合は、端末プロファイルをダウンロードして、webapps/fess/WEB-INF/classes/device / に _YYYY-MM-DD を取り除いて保存します。 再起動後に変更が有効になります。</p>
<source><![CDATA[
ProfileData_YYYY-MM-DD.csv -> ProfileData.csv
UserAgent_YYYY-MM-DD.csv -> UserAgent.csv
DisplayInfo_YYYY-MM-DD.csv -> DisplayInfo.csv
]]></source>
</section>
</body>
</document>

View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ステミング設定</title>
<author>曽根 孝明</author>
</properties>
<body>
<section name="ステミングについて">
<p>Fess ではインデックス作成や検索の際、ステミングという処理が行われています。</p>
<p>これは英単語を正規化する処理であり、例えば、recharging や rechargable といった単語は recharg という形に正規化されます。これによって、recharging という語で検索を行った場合でもrechargableという語にヒットし、検索漏れが少なくなることが期待されます。</p>
</section>
<section name="protwords.txtについて">
<p>ステミング処理は基本的にルールベースの処理であるため、意図しない正規化が行われてしまう可能性があります。例えば、Maine(アメリカの州の名前)という語は main に正規化されてしまいます。</p>
<p>このような場合、protwords.txt に Maine を追加することで、ステミング処理の対象から除外できます。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>プロキシの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="クローラ用プロキシの設定">
<p>イントラネット内から外部サイトをクロールするような場合は、ファイアフォールにクロールがブロックされてしまうかもしれません。そのような場合にはクローラ用のプロキシを設定してください。</p>
</section>
<subsection name="設定方法">
<p>下記の内容で webapps/fess/WEB-INF/classes/s2robot_client.dicon を作成することでプロキシが設定されます。</p>
<source><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN"
"http://www.seasar.org/dtd/components24.dtd">
<components>
<include path="s2robot_robotstxt.dicon"/>
<include path="s2robot_contentlength.dicon"/>
<component name="httpClient" class="org.seasar.robot.client.http.CommonsHttpClient" instance="prototype">
<property name="cookiePolicy">@org.apache.commons.httpclient.cookie.CookiePolicy@BROWSER_COMPATIBILITY</property>
<property name="proxyHost">"プロキシホスト名"</property>
<property name="proxyPort">プロキシポート</property>
<!-- プロキシに認証がある場合
<property name="proxyCredentials">
<component class="org.apache.commons.httpclient.UsernamePasswordCredentials">
<arg>"プロキシ用ユーザー名"</arg>
<arg>"プロキシ用パスワード"</arg>
</component>
</property>
-->
</component>
<component name="fsClient" class="org.seasar.robot.client.fs.FileSystemClient" instance="prototype">
<property name="charset">"UTF-8"</property>
</component>
<component name="clientFactory" class="org.seasar.robot.client.S2RobotClientFactory" instance="prototype">
<initMethod name="addClient">
<arg>{"http:.*", "https:.*"}</arg>
<arg>httpClient</arg>
</initMethod>
<initMethod name="addClient">
<arg>"file:.*"</arg>
<arg>fsClient</arg>
</initMethod>
</component>
</components>
]]></source>
</subsection>
</body>
</document>

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>レプリケーションの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="レプリケーションの設定">
<p>Fess は指定されたパスにある Solr のインデックスデータをコピーすることができます。クロールおよびインデックス作成用の Fess と検索用 Fess の 2 台のサーバーを構築することで、インデックス作成時にかかる負荷を分散することができます。</p>
<p>Fess のレプリケーション機能を利用するためには Solr のインデックスファイルを NFS などの共有ディスクにおいて、それぞれの Fess から参照できる必要があります。</p>
</section>
<section name="構築方法">
<subsection name="インデックス作成用 Fess の構築">
<p>Fess をダウンロードして、インストールします。<code>/net/server1/usr/local/fess/</code> にインストールしたとします。</p>
<p>Fess の起動後、通常の構築と同様にクロール設定を登録して、クロールしてインデックスを作成してください (インデックス作成用 Fess の構築手順は通常の構築手順と特に変わりません)。</p>
</subsection>
<subsection name="検索用 Fess の構築">
<p>Fess をダウンロードして、インストールします。<code>/net/server2/usr/local/fess/</code> にインストールしたとします。</p>
<p>Fess の起動後、管理画面のクロール全般の設定で「レプリケーション機能」のチェックボックスを有効にして、「スナップショットパス」を指定します。スナップショットパスは、インデックス作成用 Fess のインデックスの場所を指定します。今回の場合では、<code>/net/server1/usr/local/fess//solr/core1/data/index</code> になります。</p>
<img src="/images/ja/2.0/crawl-2.png" alt="レプリケーション"/>
<p>更新ボタンを押下してデータを保存すると、スケジュールで設定された時間でインデックスのレプリケーションが実行されます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ロールベース検索の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ロールベース検索とは">
<p>Fess では任意の認証システムで認証されたユーザーの認証情報を元に検索結果を出し分けることができます。たとえば、ロールaを持つユーザーAは検索結果にロールaの情報が表示されるが、ロールaを持たないユーザーBは検索してもそれが表示されません。この機能を利用することで、ポータルやシングルサインオン環境でログインしているユーザーの所属する部門別や役職別などに検索を実現することができます。</p>
<p>Fess のロールベース検索ではロール情報を以下より取得できます。</p>
<ul>
<li>リクエストパラメータ</li>
<li>リクエストヘッダー</li>
<li>クッキー</li>
<li>J2EE の認証情報</li>
</ul>
<p>ポータルやエージェント型シングルサインオンシステムでは認証時に Fess の稼働しているドメインとパスに対してクッキーで認証情報を保存することで、ロール情報を取得することができます。また、リバースプロキシ型シングルサインオンシステムでは Fess へのアクセス時にリクエストパラメータやリクエストヘッダーに認証情報を付加することでロール情報を取得することができます。</p>
</section>
<section name="ロールベース検索の設定">
<p>ここでは J2EE の認証情報を利用したロールベース検索の設定方法を説明します。</p>
<subsection name="tomcat-users.xmlの設定">
<p>conf/tomcat-users.xml にロールとユーザーを追加します。今回は role1 ロールでロールベース検索を行います。ログインするユーザーは role1 になります。</p>
<source><![CDATA[
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="fess"/>
<role rolename="solr"/>
<role rolename="role1"/>
<user username="admin" password="admin" roles="fess"/>
<user username="solradmin" password="solradmin" roles="solr"/>
<user username="role1" password="role1" roles="role1"/>
</tomcat-users>
]]></source>
</subsection>
<subsection name="app.diconの設定">
<p>webapps/fess/WEB-INF/classes/app.dicon を以下のように設定します。</p>
<source><![CDATA[
:
<component name="systemHelper" class="jp.sf.fess.helper.SystemHelper">
<property name="authenticatedRoles">"role1"</property>
</component>
:
<component name="roleQueryHelper" class="jp.sf.fess.helper.impl.RoleQueryHelperImpl">
<property name="defaultRoleList">
{"guest"}
</property>
</component>
:
]]></source>
<p>authenticatedRoles はカンマ (,) 区切りで複数記述することができます。defaultRoleList を設定することで、認証情報がない場合のロール情報を設定できます。設定することでログインしていないユーザーにはロールが必要な検索結果を表示させないようにできます。</p>
</subsection>
<subsection name="web.xmlの設定">
<p>webapps/fess/WEB-INF/web.xml を以下のように設定します。</p>
<source><![CDATA[
:
<security-constraint>
<web-resource-collection>
<web-resource-name>Fess Authentication</web-resource-name>
<url-pattern>/login/login</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>fess</role-name>
<role-name>role1</role-name>
</auth-constraint>
</security-constraint>
:
<security-role>
<role-name>fess</role-name>
</security-role>
<security-role>
<role-name>role1</role-name>
</security-role>
:
]]></source>
</subsection>
<subsection name="Fess の管理画面での設定">
<p>Fess を起動して管理者としてログインします。メニューのロールから設定名を Role1 (設定名は任意)、値を role1 でロールを登録します。あとは role1 を持つユーザーで利用したいクロール設定で、Role1 を選択してクロール設定を登録してクロールします。</p>
</subsection>
<subsection name="ロールでログイン">
<p>管理画面からログアウトします。role1 ユーザーでログインします。ログインに成功すると検索画面のトップにリダイレクトされます。</p>
<p>通常通り検索すると、クロール設定で Role1 のロール設定されたものだけが表示されます。</p>
<p>また、ログインしていない状態での検索は、guest ユーザーによる検索となります。</p>
</subsection>
<subsection name="ロールのログアウト">
<p>管理者以外のロールでログインした状態で http://localhost:8080/fess/admin にアクセスすると、ログアウトするかどうかの画面が表示されます。ログアウトボタンを押下することでログアウトされます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ポート変更</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ポートの変更">
<p>Fess がデフォルトで利用するポートは 8080 になります。 変更するには以下の手順で変更します。</p>
<subsection name="Tomcat のポート変更">
<p>Fess が利用している Tomcat のポートを変更します。 変更は conf/server.xml に記述されている以下のものを変更します。</p>
<ul>
<li>8080: HTTP アクセスポート</li>
<li>8005: シャットダウンポート</li>
<li>8009: AJP ポート</li>
<li>8443: SSL の HTTP アクセスポート (デフォルトは無効)</li>
</ul>
</subsection>
<subsection name="Solr の設定">
<p>標準構成では、Solr も同じ Tomcat の設定を利用しているので、Tomcat のポートを変更した場合は、Fess の Solr サーバーの参照先情報も変更する必要があります。 webapps/fess/WEB-INF/classes/fess_solr.dicon を変更します。</p>
<source><![CDATA[
<arg>"http://localhost:8080/solr"</arg>
]]></source>
<p>
<b>注: Tomcat のポートを変更した場合は上記のポートを同様に変更しないと、Solr サーバーにアクセスできないために検索画面やインデックス更新時にエラーが表示されます。</b>
</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>Solr障害時の動作</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Solr障害時の動作">
<p>Fess では Solr サーバーをグループ化して、複数のグループを管理することができます。Fess はサーバーおよびグループの情報を保持して、Solr サーバーにアクセスできなくなった場合はサーバー及びグループの状態を変更します。</p>
<p>Solr サーバーの状態情報は、管理画面のシステム設定で変更することができます。minActiveServer、maxErrorCount、maxRetryStatusCheckCount、maxRetryUpdateQueryCount は webapps/fess/WEB-INF/classes/fess_solr.dicon で定義することができます。</p>
<subsection name="障害の Solr グループの動作">
<ul>
<li>Solr グループ内に有効状態の Solr サーバー台数が minActiveServer 以下になった場合は Solr グループが無効状態になります。</li>
<li>Solr グループ内に有効状態の Solr サーバー台数が minActiveServer 以下になっているが Solr グループが無効状態になっていない場合、無効状態の Solr サーバーの状態を maxRetryStatusCheckCount 回確認して、Solr サーバーにアクセスできる場合は Solr サーバーの状態を無効状態から有効状態に変更します。インデックス破損状態の Solr サーバーはアクセスできたとしても有効状態に変更されません。</li>
<li>無効状態の Solr グループは利用されません。</li>
<li>Solr グループを有効状態にするためには、管理画面のシステム設定で Solr グループ内の Solr サーバーの状態を有効に変更します。</li>
</ul>
</subsection>
<subsection name="検索時の障害の動作">
<ul>
<li>検索クエリーは有効状態の Solr グループに送信できます。。</li>
<li>検索クエリーは有効状態の Solr サーバーだけに送信されます。</li>
<li>Solr グループ内に複数の Solr サーバーが登録されている場合は、利用している回数が少ない Solr サーバーに検索クエリーを送信します。</li>
<li>Solr サーバーに送信した検索クエリーが maxErrorCount 以上失敗した場合は Solr サーバーを無効状態に変更します。</li>
</ul>
</subsection>
<subsection name="更新時の障害の動作">
<ul>
<li>更新クエリーは有効状態の Solr グループに送信できます。。</li>
<li>更新クエリーは有効状態の Solr サーバーだけに送信されます。</li>
<li>Solr グループ内に複数の Solr サーバーが登録されている場合は、有効状態の Solr サーバーすべてに更新クエリーを送信します。</li>
<li>Solr サーバーに送信した更新クエリーが maxRetryUpdateQueryCount 以上失敗した場合は Solr サーバーをインデックス破損状態に変更します。</li>
</ul>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>索引文字列抽出についての設定</title>
<author>曽根 孝明</author>
</properties>
<body>
<section name="索引文字列抽出について">
<p>検索のためのインデックスを作成する際、索引として登録するために文書を切り分ける必要があります。</p>
<p>このために使用されるのが、トークナイザーです。</p>
<p>基本的に、トークナイザーによって切り分けられた単位よりも小さいものは、検索を行ってもヒットしません。</p>
<p>例えば、「東京都に住む」という文を考えます。いま、この文が「東京都」「に」「住む」というようにトークナイザーによって分割されたとします。この場合、「東京都」という語で検索を行った場合はヒットします。しかし、「京都」という語で検索を行った場合はヒットしません。</p>
<p>そのためトークナイザーの選択は重要です。</p>
<p>Fess の場合デフォルトでは CJKTokenizer が使用されていますが、schema.xml の analyzer 部分を設定することでトークナイザを変更することができます。</p>
</section>
<subsection name="CJKTokenizerについて">
<p>CJKTokenizer 日本語のようなマルチバイトの文字列に対しては bi-gram 、つまり二文字ずつインデックスを作成します。この場合、1文字の語を検索することはできません。</p>
</subsection>
<subsection name="StandardTokenizerについて">
<p>StandardTokenizer は日本語のようなマルチバイトの文字列に対しては uni-gram 、つまり一文字ずつインデックスを作成します。そのため、検索漏れが少なくなります。また、CJKTokenizerの場合、1文字のクエリを検索することができませんが、StandardTokenizerを使用すると検索可能になります。</p>
<p>下記の例のように schema.xml の analyzer 部分を変更することで、StandardTokenizer を使用できます。</p>
<source><![CDATA[
:
<types>
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
:
]]></source>
</subsection>
</body>
</document>

View file

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>Windowsサービスへの登録</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Windowsサービスとしての登録">
<p>Windows 環境であれば Fess を Windows のサービスとして登録することができます。サービスの登録方法は Tomcat と同様です。</p>
<subsection name="登録方法">
<p>まず、Fess のインストール後、コマンドプロンプトから service.bat を実行します (Vista などでは管理者として起動する必要があります)。Fess は C:\Java\fess-server-2.0.0 にインストールしたものとします。</p>
<source><![CDATA[
> cd C:\Java\fess-server-2.0.0\bin
> service.bat install fess
...
The service 'fess' has been installed.
]]></source>
<p>次に Fess 用のプロパティを追加します。以下を実行すると、Tomcat のプロパティ設定ウィンドウが表示されます。</p>
<source><![CDATA[
> tomcat6w.exe //ES//fess
]]></source>
<p>Java タブの Java Options に以下を設定します。</p>
<source><![CDATA[
-Dcatalina.base=C:\Java\fess-server-2.0.0
-Dcatalina.home=C:\Java\fess-server-2.0.0
-Djava.endorsed.dirs=C:\Java\fess-server-2.0.0\endorsed
-Djava.io.tmpdir=C:\Java\fess-server-2.0.0\temp
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=C:\Java\fess-server-2.0.0\conf\logging.properties
-Dsolr.solr.home=C:\Java\fess-server-2.0.0\solr
-Dsolr.data.dir=C:\Java\fess-server-2.0.0\solr\data
-Dfess.log.file=C:\Java\fess-server-2.0.0\webapps\fess\WEB-INF\logs\fess.out
-Djava.awt.headless=true
-XX:+UseGCOverheadLimit
-XX:+UseConcMarkSweepGC
-XX:+CMSIncrementalMode
-XX:+UseTLAB
-Dpdfbox.cjk.support=true
-XX:MaxPermSize=128m
]]></source>
<p>Maximum memory pool の値を 512 に変更します。設定後、OK ボタンを押下して設定を保存します。あとは、通常の Windows サービスと同様に起動してください。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>検索ガイド</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Fess 2.0 検索ガイド">
<p>ここでは、Fess 2.0 の検索方法に関する説明です。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>検索フィールド指定による検索</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="フィールド指定検索">
<p>Fess ではクロール結果をタイトルや本文などの各フィールドに保存されています。それらのフィールドを指定して検索することができます。</p>
<p>デフォルトでは以下のフィールドを指定して検索することができます。</p>
<table>
<tbody>
<tr>
<th>url</th>
<td>クロールした URL</td>
</tr>
<tr>
<th>host</th>
<td>クロールした URL に含まれていたホスト名</td>
</tr>
<tr>
<th>site</th>
<td>クロールした URL に含まれていたサイト名</td>
</tr>
<tr>
<th>title</th>
<td>タイトル</td>
</tr>
<tr>
<th>content</th>
<td>本文</td>
</tr>
<tr>
<th>contentLength</th>
<td>クロールしたコンテンツサイズ</td>
</tr>
<tr>
<th>lastModified</th>
<td>クロールしたコンテンツの最終更新日時</td>
</tr>
<tr>
<th>mimetype</th>
<td>コンテンツの MIME タイプ</td>
</tr>
</tbody>
</table>
<p>フィールド指定をしていない場合は、title と content を対象に検索します。</p>
<subsection name="検索方法">
<p>フィールド指定検索をする場合は、「フィールド名:検索語」のように検索フォームに入力して検索します。</p>
<p>タイトルに対して、Fess を検索語として検索します。</p>
<source><![CDATA[
title:Fess
]]></source>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ラベルによる検索</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ラベルによる検索">
<p>管理画面でラベルを登録しておくことで、検索画面でラベルによる検索が可能になります。検索結果を分類したい場合にラベルを利用することができます。ラベルを登録していない場合は、ラベルのプルダウンボックスは表示されません。</p>
<img src="/images/ja/2.0/search-label-1.png" alt="ラベルによる検索"/>
<p>ラベルを設定してインデックスを作成することで、ラベルで指定されたクロール設定ごとに検索をすることができます。ラベルを指定しない検索は通常と同様の全件検索になります。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>検索のソート</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ソート検索">
<p>検索日時などのフィールドを指定して検索結果をソートすることができます。</p>
<p>デフォルトでは以下のフィールドを指定してソートすることができます。</p>
<table>
<tbody>
<tr>
<th>tstamp</th>
<td>クロールした日時</td>
</tr>
<tr>
<th>contentLength</th>
<td>クロールしたコンテンツサイズ</td>
</tr>
<tr>
<th>lastModified</th>
<td>クロールしたコンテンツの最終更新日時</td>
</tr>
</tbody>
</table>
<subsection name="ソート方法">
<p>ソートをする場合は、「sort:フィールド名」のように検索フォームに入力して検索します。</p>
<p>以下は Fess を検索語として、コンテンツサイズを昇順にソートします。</p>
<source><![CDATA[
Fess sort:contentLength
]]></source>
<p>降順にソートする場合は以下のようにします。</p>
<source><![CDATA[
Fess sort:contentLength.desc
]]></source>
<p>複数のフィールドでソートする場合は以下のように , 区切りで指定します。</p>
<source><![CDATA[
Fess sort:contentLength.desc,lastModified
]]></source>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ブラウザタイプの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ブラウザタイプの設定">
<p>ここでは、ブラウザタイプに関わる設定について説明します。 ブラウザタイプは検索結果データに付加され、閲覧ブラウザの種類ごとに検索結果を出し分けることができます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのブラウザタイプをクリックします。</p>
<img src="/images/ja/3.0/browserType-1.png" alt="ブラウザタイプの設定" />
</subsection>
<subsection name="ブラウザタイプ">
<p>表示名と値を設定できます。 新規に閲覧端末を増やしたい場合などに利用します。 特別なカスタマイズが必要場合にしか、利用する必要はありません。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>設定ウィザード</title>
<author>曽根 孝明</author>
</properties>
<body>
<section name="設定ウィザード">
<p>ここでは、設定ウィザードの紹介をします。</p>
<p>設定ウィザードを利用することで、簡単に fess をセットアップすることができます。</p>
<subsection name="設定ウィザードの利用方法">
<p>管理者アカウントでログイン後、メニューの設定ウィザードをクリックします。</p>
<img src="/images/ja/3.0/config-wizard-1.png" alt="設定ウィザード" />
<p>まず始めに、スケジュールの設定を行います。</p>
<p>ここで設定した時間に fess はクローリングを行い、インデックスを作成します。</p>
<p>デフォルトでは、毎日0時0分です。</p>
<img src="/images/ja/3.0/config-wizard-2.png" alt="スケジュールの設定" />
<p>次に、クロール設定を行います。</p>
<p>クロール設定は、検索対象するURIを登録するものです。</p>
<p>クロール設定名の部分は、識別しやすい任意の名前をいれてください。</p>
<p>クロールパスの部分には、検索対象としたい URI を入れてください。</p>
<img src="/images/ja/3.0/config-wizard-3.png" alt="クロール設定" />
<p>例えば、http://example.com を検索対象としたい場合、以下のようになります。</p>
<img src="/images/ja/3.0/config-wizard-4.png" alt="クロール設定例" />
<p>これで設定はおわりです。</p>
<p>「クロール開始」ボタンを押下することで、クロールが開始されます。「完了」ボタンを押下した場合、スケジューリングの設定で指定した時間になるまでは、クロールが開始されません。</p>
<img src="/images/ja/3.0/config-wizard-5.png" alt="クロール開始" />
</subsection>
<subsection name="設定内容の変更">
<p>設定ウィザードで設定した内容は、クロール全般、ウェブ、ファイルシステムから変更できます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>クロール全般の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="クロール全般の設定">
<p>ここでは、クロール全般に関わる設定について説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのクロール全般をクリックします。</p>
<img src="/images/ja/3.0/crawl-1.png" alt="クロール全般"/>
<p>レプリケーション機能を有効にすると、生成済みのインデックスのパスを指定することができます。</p>
<img src="/images/ja/3.0/crawl-2.png" alt="レプリケーション機能"/>
</subsection>
<subsection name="スケジュール: クロールの間隔についての設定">
<p>ウェブサイトやファイルシステムに対してクロールを行う間隔を設定できます。 デフォルトでは以下のようになっています。</p>
<source><![CDATA[
0 0 0 * * ?
]]></source>
<p>数字は、左から、秒、分、時、日、月、曜日 を表します。 記述形式は Unix の cron の設定に似ています。 この例だと、毎日午前0時0分にクロールが行われます。</p>
<p>以下に記述方法の例を示します。</p>
<table class="table table-striped table-bordered table-condensed">
<tbody>
<tr class="a">
<td align="left">0 0 12 * * ?</td>
<td align="left">毎日 12pm に起動</td>
</tr>
<tr class="b">
<td align="left">0 15 10 ? * *</td>
<td align="left">毎日 10:15am に起動</td>
</tr>
<tr class="a">
<td align="left">0 15 10 * * ?</td>
<td align="left">毎日 10:15am に起動</td>
</tr>
<tr class="b">
<td align="left">0 15 10 * * ? *</td>
<td align="left">毎日 10:15am に起動</td>
</tr>
<tr class="a">
<td align="left">0 15 10 * * ? 3.05</td>
<td align="left">3.09 年の毎日 10:15am に起動</td>
</tr>
<tr class="b">
<td align="left">0 * 14 * * ?</td>
<td align="left">毎日 3.00pm-2:59pm で 1 分毎に起動</td>
</tr>
<tr class="a">
<td align="left">0 0/5 14 * * ?</td>
<td align="left">毎日 3.00pm-2:59pm で 5 分毎に起動</td>
</tr>
<tr class="b">
<td align="left">0 0/5 14,18 * * ?</td>
<td align="left">毎日 3.00pm-2:59pm と 6:00pm-6:59pm で 5 分毎に起動</td>
</tr>
<tr class="a">
<td align="left">0 0-5 14 * * ?</td>
<td align="left">毎日 3.00pm-3.05pm で 1 分毎に起動</td>
</tr>
<tr class="b">
<td align="left">0 10,44 14 ? 3 WED</td>
<td align="left">3 月の水曜日の 2:10pm と 2:44pm に起動</td>
</tr>
<tr class="a">
<td align="left">0 15 10 ? * MON-FRI</td>
<td align="left">月曜日から金曜日までで 10:15am に起動</td>
</tr>
</tbody>
</table>
<p>秒まで設定できますが、デフォルトの設定では 60 秒間隔で実行するかどうかを確認しています。 秒まで正確に設定したい場合や 1 時間単位で確認すれば十分な場合などは、webapps/fess/WEB-INF/classes/chronosCustomize.dicon の taskScanIntervalTime の値をカスタマイズしてください。</p>
</subsection>
<subsection name="モバイル変換">
<p>検索結果のウェブサイトが PC 用だった場合、モバイル端末で正しく表示できないかもしれません。 そのような場合に、モバイル変換を選択していると、PC サイトをモバイル端末用に変換して表示することができます。 Google を選択した場合、Google Wireless Transcoder により、携帯向けにコンテンツを表示することができます。 たとえば、PC 用サイトを検索対象にして結果をモバイル端末でも閲覧したい場合、モバイル端末向け検索結果一覧で検索結果のリンクが Google Wireless Transcoder に渡すリンクになります。 モバイル変換を利用することでモバイル端末でもスムーズな検索を利用することができます。</p>
</subsection>
<subsection name="レプリケーション機能">
<p>レプリケーション機能を有効にすることで、既に生成済みの Solr インデックスをコピーして適用することができます。たとえば、クロールとインデックス化を別なサーバー上で行い、フロントに置く検索サーバーでは検索だけをしたい場合などに利用することができます。</p>
</subsection>
<subsection name="インデックスのコミット、最適化">
<p>クロール後、データは Solr に対して登録されます。 インデックスのコミットまたは最適化することで、その登録されたデータが有効になります。 インデックスの最適化が選択されていれば、Solr に対して optimize が発行され、コミットを選択した場合は commit が発行されます。</p>
</subsection>
<subsection name="サーバー切り替え">
<p>Fess は複数の Solr サーバーをグループとしてまとめることができ、そのグループを複数管理できます。 更新用と検索用の Solr サーバーグループは異なるグループを利用します。 たとえば、2 つのグループがあった場合、更新用がグループ 2 を利用し、検索用がグループ 1 を利用します。 サーバー切り替えを有効にしている場合は、クロールが完了した後に更新用がグループ 1 になり、検索用がグループ 2 に切り替わります。複数の Solr サーバーグループを登録している場合にだけ有効です。</p>
</subsection>
<subsection name="ドキュメント数毎にコミット">
<p>Fess ではインデックス化のパフォーマンスを上げるためにクロールしながら、20 件単位でドキュメントを Solr に対して送信します。 コミットせずにドキュメントを追加しつづけると、Solr 上でのドキュメント追加のパフォーマンスが低下するため、ここで指定した値ごとに Solr に対してドキュメントのコミットを発行します。 デフォルトでは 1000 件ドキュメントを追加したら、コミットされます。</p>
</subsection>
<subsection name="同時実行のクロール設定数">
<p>Fess のドキュメントクロールはウェブクロール、ファイルシステムクロールの順に行われます。 それぞれのクロールにおいて、ここで指定した値の数だけ、設定したクロール先を複数同時に実行することができます。 たとえば、同時実行のクロール設定数を 3 として、ウェブクロールに設定 1 から設定 10 まで登録してある場合、クロール実行時には設定 1 から設定 3 までの 3 つが実行されます。 それらのどれかのクロールが完了すると、設定 4 のクロールが開始されます。 同様に、設定 10 まで 1 つ完了するごとに 1 つ起動していきます。</p>
<p>クロール設定でスレッド数を指定することができますが、ここでの同時実行のクロール設定数は起動するスレッド数を示すものではありません。 たとえば、同時実行のクロール設定数が 3 で、各クロール設定のスレッド数を 5 としている場合は、3 x 5 = 15 のスレッド数が起動してクロールすることになります。</p>
</subsection>
<subsection name="インデックスの有効期限">
<p>インデックスされているデータを新規データ登録後に自動的に削除することができます。 インデックスの有効期限で 5 日を選択している場合は、5 日以上前に登録して更新がなかったものが削除されます。 コンテンツが削除されてしまったデータなどを検索対象から外す場合などに利用できます。</p>
</subsection>
<subsection name="スナップショットパス">
<p>レプリケーション機能を有効にした場合に、スナップショットパスとして指定されたインデックスディレクトリからインデックス情報をコピーして適用されます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>セッション情報の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="セッション情報の設定">
<p>ここでは、セッション情報に関わる設定について説明します。 1 回のクロールした結果を 1 つのセッション情報として保存されます。 実行した時間やインデックスされた数を確認することができます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのセッション情報をクリックします。</p>
</subsection>
<subsection name="セッション情報一覧">
<img src="/images/ja/3.0/crawlingSession-1.png" alt="セッション情報一覧"/>
<p>すべて削除リンクをクリックすると実行中でないすべてのセッション情報を削除することができます。</p>
</subsection>
<subsection name="セッション情報詳細">
<img src="/images/ja/3.0/crawlingSession-2.png" alt="セッション情報詳細"/>
<p>セッション ID を指定してクロール内容を確認できます。</p>
<ul>
<li>Cralwer*: クロール全体に関する情報</li>
<li>FsCrawl*: ファイルシステムのクロールに関する情報</li>
<li>WebCrawl*: ウェブのクロールに関する情報</li>
<li>Optimize*: Solr サーバーに発行した最適化に関する情報</li>
<li>Commit*: Solr サーバーに発行したコミットに関する情報</li>
<li>*StartTime: 開始時刻</li>
<li>*EndTime: 終了時刻</li>
<li>*ExecTime: 実行時間 (ミリ秒)</li>
<li>*IndexSize: インデックスしたドキュメント数</li>
</ul>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>設定情報のバックアップとリストア</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="設定情報のバックアップとリストア">
<p>ここでは、Fess の設定情報のバックアップとリストア方法について説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのバックアップ/リストアをクリックします。</p>
<img src="/images/ja/3.0/data-1.png" alt="バックアップ/リストア"/>
</subsection>
<subsection name="設定のバックアップ">
<p>ダウンロードリンクをクリックすると、Fess の設定情報を XML 形式で出力します。 保存される設定情報は以下のものです。</p>
<ul>
<li>クロール全般の設定</li>
<li>ウェブクロール設定</li>
<li>ファイルシステムクロール設定</li>
<li>パスマッピング</li>
<li>ウェブ認証</li>
<li>対応ブラウザ</li>
<li>セッション情報</li>
</ul>
<p>Solr 内のインデックスデータやクロール中のデータはバックアップ対象にはなりません。 それらのデータは Fess の設定情報をリストア後、クロールすることで再生成することができます。</p>
</subsection>
<subsection name="設定のリストア">
<p>バックアップで出力した XML をアップロードすることで設定情報を復元することができます。 XML ファイルを指定してデータのリストアボタンをクリックしてください。</p>
<p>データの上書きを有効にすると、既に同じデータがある場合は既存のデータの更新を行います。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,129 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>データストアの設定</title>
<author>曽根 孝明</author>
</properties>
<body>
<section name="データストアの設定">
<p>fess ではデータベースもクロール対象とすることができます。ここでは、そのために必要なデータストアの設定について説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのデータストアをクリックします。</p>
<img src="/images/ja/3.0/dataStoreCrawling-1.png" alt="データストアの設定"/>
<p>例として、以下のようなテーブルが MySQL の testdb というデータベースにあり、ユーザ名 hoge 、パスワード fuga で接続することができるとして、説明を行います。</p>
<source><![CDATA[
CREATE TABLE job (
id BIGINT NOT NULL AUTO_INCREMENT
, title VARCHAR(100) NOT NULL
, content VARCHAR(255) NOT NULL
, versionNo INTEGER NOT NULL
, PRIMARY KEY (id)
);
]]></source>
</subsection>
<subsection name="パラメータ">
<p>パラメータの設定例は以下のようになります。</p>
<source><![CDATA[
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=UTF-8
username=hoge
password=fuga
sql=select * from job
]]></source>
<p>パラメータは「キー=値」形式となっています。キーの説明は以下です。</p>
<table class="table table-striped table-bordered table-condensed">
<tbody>
<tr class="a">
<td align="left">driver</td>
<td align="left">ドライバクラス名</td>
</tr>
<tr class="b">
<td align="left">url</td>
<td align="left">URL</td>
</tr>
<tr class="a">
<td align="left">username</td>
<td align="left">DBに接続する際のユーザ名</td>
</tr>
<tr class="b">
<td align="left">password</td>
<td align="left">DBに接続する際のパスワード</td>
</tr>
<tr class="a">
<td align="left">sql</td>
<td align="left">クロール対象を得るための SQL 文</td>
</tr>
</tbody>
</table>
</subsection>
<subsection name="スクリプト">
<p>スクリプトの設定例は以下のようになります。</p>
<source><![CDATA[
url="http://localhost/" + id
host="localhost"
site="localhost"
title=title
content=content
cache=content
digest=content
anchor=
contentLength=content.length()
lastModified=content.length()
]]></source>
<p>
パラメータは「キー=値」形式になっています。キーの説明は以下です。
</p>
<p>
値の側は、OGNL で記述します。文字列はダブルクォーテーションでくくってください。データベースのカラム名でアクセスすれば、その値になります。
</p>
<table class="table table-striped table-bordered table-condensed">
<tbody>
<tr class="a">
<td align="left">url</td>
<td align="left">URL(検索結果に表示されるリンク)</td>
</tr>
<tr class="b">
<td align="left">host</td>
<td align="left">ホスト名</td>
</tr>
<tr class="a">
<td align="left">site</td>
<td align="left">サイトパス</td>
</tr>
<tr class="b">
<td align="left">title</td>
<td align="left">タイトル</td>
</tr>
<tr class="a">
<td align="left">content</td>
<td align="left">コンテンツ(インデックス対象文字列)</td>
</tr>
<tr class="b">
<td align="left">cache</td>
<td align="left">コンテンツのキャッシュ(インデックス対象ではない)</td>
</tr>
<tr class="a">
<td align="left">digest</td>
<td align="left">検索結果に表示されるダイジェスト部分</td>
</tr>
<tr class="b">
<td align="left">anchor</td>
<td align="left">コンテンツに含まれるリンク(普通は指定する必要はありません)</td>
</tr>
<tr class="a">
<td align="left">contentLength</td>
<td align="left">コンテンツの長さ</td>
</tr>
<tr class="b">
<td align="left">lastModified</td>
<td align="left">コンテンツの最終更新日</td>
</tr>
</tbody>
</table>
</subsection>
<subsection name="ドライバ">
<p>データベースに接続する際にはドライバが必要となります。webapps/fess/WEB-INF/cmd/lib に jar ファイルを置いてください。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,101 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>デザインの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="デザインの設定">
<p>ここでは、検索画面のデザインに関する設定について説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのデザインをクリックします。</p>
<img src="/images/ja/3.0/design-1.png" alt="デザイン"/>
<p>以下の画面で検索画面を編集することができます。</p>
<img src="/images/ja/3.0/design-2.png" alt="JSP の編集画面"/>
</subsection>
<subsection name="画像ファイル">
<p>検索画面で使用する画像ファイルをアップロードすることができます。サポートしている画像ファイル名は jpg、gif、png です。</p>
</subsection>
<subsection name="画像ファイル名">
<p>アップロードする画像ファイルにファイル名を指定したい場合に利用します。省略した場合はアップロードしたファイル名が利用されます。</p>
</subsection>
<subsection name="デザイン JSP ファイル">
<p>検索画面の JSP ファイルを編集することができます。対象の JSP ファイルの編集ボタンを押下することで、現在の JSP ファイルを編集することができます。また、デフォルトを使用ボタンを押下すると、インストール時の JSP ファイルとして編集することができます。編集画面で更新ボタンで保存することで、変更が反映されます。</p>
<p>以下に記述方法の例を示します。</p>
<table class="table table-striped table-bordered table-condensed">
<tbody>
<tr class="a">
<td align="left">トップページ (フレーム)</td>
<td align="left">検索トップページの JSP ファイルです。この JSP ファイルが各部分の JSP ファイルを include しています。</td>
</tr>
<tr class="b">
<td align="left">トップページ (Headタグ内)</td>
<td align="left">検索トップページの head タグ内を表現する JSP ファイルです。meta タグ、title タグ、script タグなどを編集したい場合に変更します。</td>
</tr>
<tr class="a">
<td align="left">トップページ (コンテンツ)</td>
<td align="left">検索トップページの body タグ内を表現する JSP ファイルです。</td>
</tr>
<tr class="b">
<td align="left">検索結果ページ (フレーム)</td>
<td align="left">検索結果一覧ページの JSP ファイルです。この JSP ファイルが各部分の JSP ファイルを include しています。</td>
</tr>
<tr class="a">
<td align="left">検索結果ページ (Headタグ内)</td>
<td align="left">検索結果一覧ページの head タグ内を表現する JSP ファイルです。meta タグ、title タグ、script タグなどを編集したい場合に変更します。</td>
</tr>
<tr class="b">
<td align="left">検索結果ページ (ヘッダー)</td>
<td align="left">検索結果一覧ページのヘッダー部分を表現する JSP ファイルです。ページ上部の検索フォームなどが含まれています。</td>
</tr>
<tr class="a">
<td align="left">検索結果ページ (フッター)</td>
<td align="left">検索結果一覧ページのフッター部分を表現する JSP ファイルです。ページ下部のコピーライトが含まれています。</td>
</tr>
<tr class="b">
<td align="left">検索結果ページ (コンテンツ)</td>
<td align="left">検索結果一覧ページの検索結果部分を表現する JSP ファイルです。検索結果があるときに利用される JSP ファイルです。検索結果の表現をカスタマイズしたい場合に変更します。</td>
</tr>
<tr class="a">
<td align="left">検索結果ページ (結果なし)</td>
<td align="left">検索結果一覧ページの検索結果部分を表現する JSP ファイルです。検索結果がないときに利用される JSP ファイルです。</td>
</tr>
</tbody>
</table>
<p>携帯用画面も PC 用と同様に編集することができます。</p>
</subsection>
</section>
<section name="設定方法">
<subsection name="登録日時や更新日時を表示する">
<p>Fess でクロールして登録した日時や取得するファイルの更新日時を検索結果に表示したい場合は、検索結果ページ (コンテンツ)に次のように記述します。</p>
<source><![CDATA[
:
:
<ol>
<c:forEach var="doc" varStatus="s" items="${documentItems}">
<%
java.util.Map docMap = (java.util.Map)pageContext.getAttribute("doc");
Long tstampValue = (Long)docMap.get("tstamp");
java.util.Date tstampDate = new java.util.Date(tstampValue);
Long lastModifiedValue = (Long)docMap.get("lastModified");
java.util.Date lastModifiedDate = new java.util.Date(lastModifiedValue);
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy/MM/dd HH:mm");
%>
<li>
<h3 class="title">
<a href="${doc.urlLink}">${f:h(doc.contentTitle)}</a>
</h3>
<div class="body">
${doc.contentDescription}
<br/>
<cite>${f:h(doc.site)}</cite>
<br>Registered: <%= sdf.format(tstampDate) %>
<br>Last Modified: <%= sdf.format(lastModifiedDate) %>
:
:
]]></source>
<p>tstampDate が登録日時、lastModifiedDate が更新日時になります。出力する日付フォーマットは SimpeDateFormat で指定します。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ファイルシステムを対象としたクロールに関する設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ファイルシステムを対象としたクロールに関する設定">
<p>ここでは、ファイルシステムを対象としたクロールに関する設定について説明します。</p>
<p>Fess で数十万件以上のドキュメントをインデックス化したい場合は、1 つのクロール設定を数万件以下にすることを推奨しています。1 つのクロール設定で数十万件を対象すると、インデックス化のパフォーマンスが低下する場合があります。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのファイルシステムをクリックします。</p>
<img src="/images/ja/3.0/fileCrawlingConfig-1.png" alt="ファイルシステムクロールの設定"/>
</subsection>
<subsection name="設定名">
<p>一覧ページで表示される名前です。</p>
</subsection>
<subsection name="パスの指定">
<p>パスは複数指定できます。 file: で始まるように指定します。 たとえば、</p>
<source><![CDATA[
file:/home/taro/
file:/home/documents/
]]></source>
<p>のように指定します。 指定されたディレクトリ以下を巡回します。</p>
<p>Windows 環境の場合は URI で記述する必要があるので、c:\Documents\taro というパスであれば file:/c:/Documents/taro と指定します。</p>
</subsection>
<subsection name="パスのフィルタリング">
<p>正規表現で指定することによって、特定のパスパターンをクロールや検索の対象にしたり、除外できます。</p>
<table>
<tbody>
<tr>
<th>クロール対象とするパス</th>
<td>指定された正規表現のパスをクロールします。</td>
</tr>
<tr>
<th>クロール対象から除外するパス</th>
<td>指定された正規表現のパスをクロール対象としません。クロール対象とするパスが指定されていても、ここでの指定が優先されます。</td>
</tr>
<tr>
<th>検索対象とするパス</th>
<td>指定された正規表現のパスを検索対象します。検索除外対象とするパスと指定されていても、ここでの指定が優先されます。</td>
</tr>
<tr>
<th>検索対象から除外するパス</th>
<td>指定された正規表現のパスを検索対象としません。クロール対象から除外してしまうと以降の全てのリンクが検索対象とすることができませんが、クロール対象の一部だけ検索対象としない場合に指定します。</td>
</tr>
</tbody>
</table>
<p>たとえば、/home/ 以下しかクロールしない場合は、対象とするパスに</p>
<source><![CDATA[
file:/home/.*
]]></source>
<p>また、拡張子が png のものを対象から除外したい場合は、除外するパスに</p>
<source><![CDATA[
.*\.png$
]]></source>
<p>と指定します。 改行をすることで複数指定することが可能です。</p>
<p>指定方法はjava.io.File が扱う URI に従います。以下のようになります。</p>
<source><![CDATA[
/home/taro -> file:/home/taro
c:\memo.txt -> file:/c:/memo.txt
\\server\memo.txt -> file:////server/memo.txt
]]></source>
</subsection>
<subsection name="深さ">
<p>ディレクトリ階層の深さを指定します。</p>
</subsection>
<subsection name="最大アクセス数">
<p>クロールして取得するドキュメント数を指定できます。</p>
</subsection>
<subsection name="スレッド数">
<p>クロールするスレッド数を指定します。 5 を指定した場合、5 個のスレッドで同時にウェブサイトをクロールします。</p>
</subsection>
<subsection name="間隔">
<p>ドキュメントをクロールする間隔です。 5000 とした場合は 1 つのスレッドが 5 秒間隔でドキュメントを取得しにいきます。</p>
<p>スレッド数を 5 個、間隔を 1000 ミリ秒とした場合、1 秒間で 5 ドキュメントを取得しにいくことになります。</p>
</subsection>
<subsection name="ブースト値">
<p>このクロール設定で検索対象とした URL に重みを付けることができます。検索結果において、他のものより上に表示したい場合に利用します。標準では 1 です。大きい値ほど優先されて、検索結果の上位に表示されます。他の結果より確実に優先して表示したい場合は、10000 などの十分に大きな値を指定します。</p>
<p>指定できる値は 0 以上の整数です。この値は Solr にドキュメントを追加する際のブースト値として利用されます。</p>
</subsection>
<subsection name="ブラウザタイプ">
<p>選択されたブラウザタイプのデータとして、クロールしたドキュメントを登録します。 PC しか選択されていない場合は、モバイル端末で検索しても結果に表示されません。 特定のモバイル端末だけで表示したい場合にも利用できます。</p>
</subsection>
<subsection name="ロール">
<p>利用するユーザーが特定のロールのときだけに検索結果に表示できるように制御することができます。ロールはあらかじめ設定しておく必要があります。>たとえば、ポータルサーバーなどログインを必要とするシステムにおいて、利用するユーザーにより検索結果を出し分けたい場合に利用できます。</p>
</subsection>
<subsection name="ラベル">
<p>検索結果をラベル付けすることができます。ラベルを指定すると、検索画面において、ラベルごとの検索などが可能になります。</p>
</subsection>
<subsection name="状態">
<p>有効にすることで、設定されているクロール時刻にクロールされます。 一時的にクロールしないようにしたい場合に利用できます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>管理 UI ガイド</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Fess 3.0 管理 UI ガイド">
<p>ここでは、Fess 3.0 の管理 UI に関する説明です。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ラベルの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ラベルの設定">
<p>ここでは、ラベルに関する設定について説明します。ラベルはクロール設定で選択することで、検索結果に表示されるドキュメントを分類することができます。ラベルを登録している場合には、検索語入力欄の右側にラベル選択のプルダウンボックスが表示されます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのラベルをクリックします。</p>
<img src="/images/ja/3.0/labelType-1.png" alt="ラベルの一覧"/>
<img src="/images/ja/3.0/labelType-2.png" alt="ラベルの設定"/><!-- TODO -->
</subsection>
<subsection name="表示名">
<p>検索時のラベル選択プルダウンボックスに表示される名前を指定します。</p>
</subsection>
<subsection name="値">
<p>ドキュメントを分類するときの識別子を指定します。この値は Solr に送信されます。英数字で指定してください。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ログファイルのダウンロード</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ログファイルのダウンロード">
<p>ここでは、Fess で出力されるログファイルのダウンロードについて説明します。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのログファイルをクリックします。</p>
<img src="/images/ja/3.0/log-1.png" alt="セッション情報"/>
</subsection>
<subsection name="ダウンロード">
<p>表示されているログファイル名をクリックすると、ログファイルをダウンロードすることができます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>重複ホストの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="重複ホストの設定">
<p>ここでは、重複ホストに関する設定について説明します。重複ホストはクロール時に異なるホスト名を同一のものとして扱いたいときに利用します。たとえば、www.example.com と example.com を同じサイトとして扱いたい場合などで利用できます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューの重複ホストをクリックします。</p>
<img src="/images/ja/3.0/overlappingHost-1.png" alt="重複ホストの一覧"/>
<img src="/images/ja/3.0/overlappingHost-2.png" alt="重複ホストの設定"/><!-- TODO -->
</subsection>
<subsection name="正規名">
<p>正規ホスト名を指定します。重複ホスト名は正規ホスト名に置き換えます。</p>
</subsection>
<subsection name="重複名">
<p>重複しているホスト名を指定します。置き換えたいホスト名を指定します。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>パスマッピングの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="パスマッピングの設定">
<p>ここでは、パスマッピングに関する設定について説明します。 パスマッピングは検索結果に表示するリンクを置き換えたい場合などに利用することができます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのパスマッピングをクリックします。</p>
<img src="/images/ja/3.0/pathMapping-1.png" alt="パスマッピングの一覧"/>
<img src="/images/ja/3.0/pathMapping-2.png" alt="パスマッピングの設定"/><!-- TODO -->
</subsection>
<subsection name="パスマッピング">
<p>パスマッピングは指定した正規表現でマッチする部分を置き換え文字列で置換します。 ローカルなファイルシステムをクロールした場合、環境によっては検索結果のリンクが有効でない場合があります。 そのような場合にパスマッピングを利用して、検索結果のリンクを制御できます。 パスマッピングは複数指定できます。</p>
</subsection>
<subsection name="正規表現">
<p>置換したい文字列を指定します。記述方法は <a href="http://java.sun.com/javase/ja/6/docs/ja/api/java/util/regex/Pattern.html">Java 6 の正規表現</a>に従います。</p>
</subsection>
<subsection name="置換文字">
<p>一致した正規表現を置き換える文字列を指定します。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>リクエストヘッダーの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="リクエストヘッダーの設定">
<p>ここでは、リクエストヘッダーに関する設定について説明します。リクエストヘッダーの機能はドキュメントをクロールして取得するときのリクエストに付加するリクエストヘッダー情報になります。たとえば、認証システムでヘッダー情報を見て、特定の値があれば自動でログインした状態にするなどの場合に利用できます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのリクエストヘッダーをクリックします。</p>
<img src="/images/ja/3.0/requestHeader-1.png" alt="リクエストヘッダーの一覧"/>
<img src="/images/ja/3.0/requestHeader-2.png" alt="リクエストヘッダーの設定"/><!-- TODO -->
</subsection>
<subsection name="名前">
<p>リクエストに付加するときのリクエストヘッダー名を指定します。</p>
</subsection>
<subsection name="値">
<p>リクエストに付加するときのリクエストヘッダー値を指定します。</p>
</subsection>
<subsection name="ウェブ設定名">
<p>リクエストヘッダーを付加するウェブクロール設定名を選択します。選択したクロール設定だけでリクエストヘッダーに付加されます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ロールの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ロールの設定">
<p>ここでは、ロールに関する設定について説明します。ロールはクロール設定で選択することで、検索結果に表示されるドキュメントを分類することができます。利用方法については、<a href="../config/role-setting.html">ロールの設定</a>を参照してください。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのロールをクリックします。</p>
<img src="/images/ja/3.0/roleType-1.png" alt="ロールの一覧"/>
<img src="/images/ja/3.0/roleType-2.png" alt="ロールの設定"/><!-- TODO -->
</subsection>
<subsection name="表示名">
<p>一覧に表示される名前を指定します。</p>
</subsection>
<subsection name="値">
<p>ドキュメントを分類するときの識別子を指定します。この値は Solr に送信されます。英数字で指定してください。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>システムの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="システムの設定">
<p>ここでは、Fess で登録している Solr に関する設定について説明します。 Solr サーバーは設定ファイルによりグループ化されて登録されています。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューの Solr をクリックします。</p>
<img src="/images/ja/3.0/system-1.png" alt="システムの設定"/>
</subsection>
<subsection name="プロセス状態">
<p>更新用のサーバーがドキュメントの追加など処理中の場合、実行中として表示されます。 クロール処理が実行中の場合にはセッション ID が表示されます。 Fess サーバーをシャットダウンする場合は、実行中でないときにシャットダウンすると安全にシャットダウンすることができます。 実行中に Fess をシャットダウンした場合は、クロール処理が終了するまでプロセスが終了しない場合があります。</p>
</subsection>
<subsection name="検索用、更新用サーバー">
<p>検索用、更新用に利用されているサーバーグループ名を表示されます。</p>
</subsection>
<subsection name="サーバーのステータス">
<p>サーバーが利用できなくなると無効のステータスになります。 たとえば、Solr サーバーにアクセスできなくなると、無効に変わります。 利用できなくなった場合は、サーバー復旧後有効にすると、利用可能な状態になります。</p>
</subsection>
<subsection name="Solr サーバーへのアクション">
<p>サーバーグループに対して、インデックスのコミット、最適化を発行することができます。 また、セッション ID を指定して、特定の検索対象を削除することができます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ウェブ認証に関する設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ウェブ認証に関する設定">
<p>ここでは、ウェブを対象としたクロールに対してウェブ認証が必要な場合の設定方法について説明します。 Fess は BASIC 認証と DIGEST 認証に対するクロールに対応しています。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのウェブ認証をクリックします。</p>
<img src="/images/ja/3.0/webAuthentication-1.png" alt="ウェブ認証の設定"/>
</subsection>
<subsection name="ホスト名">
<p>認証が必要なサイトのホスト名を指定します。 省略した場合は、指定したウェブクロール設定において、任意のホスト名で適用されます。</p>
</subsection>
<subsection name="ポート">
<p>認証が必要なサイトのポートを指定します。 すべてのポートに対して適用したい場合は -1 を指定します。 その場合は、指定したウェブクロール設定において、任意のポートで適用されます。</p>
</subsection>
<subsection name="レルム">
<p>認証が必要なサイトのレルム名を指定します。 省略した場合は、指定したウェブクロール設定において、任意のレルム名で適用されます。</p>
</subsection>
<subsection name="認証方法">
<p>認証方法を選択します。 BASIC 認証か DIGEST 認証を利用することができます。</p>
</subsection>
<subsection name="ユーザー名">
<p>認証サイトにログインするためのユーザー名を指定します。</p>
</subsection>
<subsection name="パスワード">
<p>認証サイトにログインするためのパスワードを指定します。</p>
</subsection>
<subsection name="ウェブ設定名">
<p>上記の認証設定を適用するウェブ設定名を選択します。 ウェブクロール設定を事前に登録しておく必要があります。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ウェブを対象としたクロールに関する設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ウェブを対象としたクロールに関する設定">
<p>ここでは、ウェブを対象としたクロールに関する設定について説明します。</p>
<p>Fess で数十万件以上のドキュメントをインデックス化したい場合は、1 つのクロール設定を数万件以下にすることを推奨しています。1 つのクロール設定で数十万件を対象すると、インデックス化のパフォーマンスが低下する場合があります。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのウェブをクリックします。</p>
<img src="/images/ja/3.0/webCrawlingConfig-1.png" alt="ウェブクロールの設定"/>
</subsection>
<subsection name="設定名">
<p>一覧ページで表示される名前です。</p>
</subsection>
<subsection name="URL の指定">
<p>URL は複数指定できます。 http: または https: で始まるように指定します。 たとえば、</p>
<source><![CDATA[
http://localhost/
http://localhost:8080/
]]></source>
<p>のように指定します。</p>
</subsection>
<subsection name="URL のフィルタリング">
<p>正規表現で指定することによって、特定の URL パターンをクロールや検索の対象にしたり、除外できます。</p>
<table>
<tbody>
<tr>
<th>クロール対象とする URL</th>
<td>指定された正規表現の URL をクロールします。</td>
</tr>
<tr>
<th>クロール対象から除外するURL</th>
<td>指定された正規表現の URL をクロール対象としません。クロール対象とする URL が指定されていても、ここでの指定が優先されます。</td>
</tr>
<tr>
<th>検索対象とするURL</th>
<td>指定された正規表現の URL を検索対象します。検索除外対象とする URL と指定されていても、ここでの指定が優先されます。</td>
</tr>
<tr>
<th>検索対象から除外するURL</th>
<td>指定された正規表現の URL を検索対象としません。クロール対象から除外してしまうと以降の全てのリンクが検索対象とすることができませんが、クロール対象の一部だけ検索対象としない場合に指定します。</td>
</tr>
</tbody>
</table>
<p>たとえば、http://localhost/ 以下しかクロールしない場合は、クロール対象とする URL に</p>
<source><![CDATA[
http://localhost/.*
]]></source>
<p>また、拡張子が png のものを対象から除外したい場合は、除外する URL に</p>
<source><![CDATA[
.*\.png$
]]></source>
<p>と指定します。改行することで複数指定することが可能です。</p>
</subsection>
<subsection name="深さ">
<p>クロールしたドキュメント内に含まれるリンクを順に辿っていきますがその辿る深さを指定できます。</p>
</subsection>
<subsection name="最大アクセス数">
<p>クロールして取得するドキュメント数を指定できます。</p>
</subsection>
<subsection name="ユーザーエージェント">
<p>クロール時に利用するユーザーエージェントを指定できます。</p>
</subsection>
<subsection name="スレッド数">
<p>クロールするスレッド数を指定します。 5 を指定した場合、5 個のスレッドで同時にウェブサイトをクロールします。</p>
</subsection>
<subsection name="間隔">
<p>ドキュメントをクロールする間隔 (ミリ秒) です。 5000 とした場合は 1 つのスレッドが 5 秒間隔でドキュメントを取得しにいきます。</p>
<p>スレッド数を 5 個、間隔を 1000 ミリ秒とした場合、1 秒間で 5 ドキュメントを取得しにいくことになります。 ウェブサイトをクロールするときにはウェブサーバー側の負荷にもなるので、負荷をかけない十分な値を設定してください。</p>
</subsection>
<subsection name="ブースト値">
<p>このクロール設定で検索対象とした URL に重みを付けることができます。検索結果において、他のものより上に表示したい場合に利用します。標準では 1 です。大きい値ほど優先されて、検索結果の上位に表示されます。他の結果より確実に優先して表示したい場合は、10000 などの十分に大きな値を指定します。</p>
<p>指定できる値は 0 以上の整数です。この値は Solr にドキュメントを追加する際のブースト値として利用されます。</p>
</subsection>
<subsection name="ブラウザタイプ">
<p>選択されたブラウザタイプのデータとして、クロールしたドキュメントを登録します。 PC しか選択されていない場合は、モバイル端末で検索しても結果に表示されません。 特定のモバイル端末だけで表示したい場合にも利用できます。</p>
</subsection>
<subsection name="ロール">
<p>利用するユーザーが特定のロールのときだけに検索結果に表示できるように制御することができます。ロールはあらかじめ設定しておく必要があります。たとえば、ポータルサーバーなどログインを必要とするシステムにおいて、利用するユーザーにより検索結果を出し分けたい場合に利用できます。</p>
</subsection>
<subsection name="ラベル">
<p>検索結果をラベル付けすることができます。ラベルを指定すると、検索画面において、ラベルごとの検索などが可能になります。</p>
</subsection>
<subsection name="状態">
<p>有効にすることで、設定されているクロール時刻にクロールされます。 一時的にクロールしないようにしたい場合に利用できます。</p>
</subsection>
</section>
<section name="その他">
<subsection name="サイトマップ">
<p>Fess ではサイトマップファイルをクロールして、その中に定義されている URL をクロール対象とすることができます。サイトマップは <a href="http://www.sitemaps.org/">http://www.sitemaps.org/</a> の仕様に従います。利用可能なフォーマットは XML Sitemaps、XML Sitemaps Index、テキスト (URL を改行で記述したもの) です</p>
<p>サイトマップは URL に指定します。サイトマップは普通の XML ファイルやテキストであるため、クロール時にその URL が普通の XML ファイルなのかサイトマップなのかが区別できません。ですので、デフォルトでは sitemap.*.xml、sitemap.*.gz、sitemap.*txt であるファイル名の URL であればサイトマップとして処理します(webapps/fess/WEB-INF/classes/s2robot_rule.dicon でカスタマイズは可能)。</p>
<p>HTML ファイルをクロールするとリンクが次のクロール対象になりますが、サイトマップファイルをクロールするとその中の URL が次のクロール対象になります。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>クロールするファイルサイズの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ファイルサイズの設定">
<p>Fess のクロールするファイルサイズ上限を指定することができます。デフォルトでは HTML ファイルは 2.5M バイト、それ以外は 10M バイトまで処理します。扱うファイルサイズを変更したい場合は webapps/fess/WEB-INF/classes/s2robot_contentlength.dicon を編集します。標準の s2robot_contentlength.dicon は以下の通りです。</p>
<source><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN"
"http://www.seasar.org/dtd/components24.dtd">
<components>
<component name="contentLengthHelper" class="org.seasar.robot.helper.ContentLengthHelper" instance="singleton" >
<property name="defaultMaxLength">10485760L</property><!-- 10M -->
<initMethod name="addMaxLength">
<arg>"text/html"</arg>
<arg>2621440L</arg><!-- 2.5M -->
</initMethod>
</component>
</components>
]]></source>
<p>デフォルト値を変更したい場合は defaultMaxLength の値を変更します。扱うファイルサイズはコンテンツタイプごとに指定できます。HTML ファイルであれば、text/html と扱うファイルサイズの上限を記述します。</p>
<p>扱うファイルサイズの上限値を変更する場合は、使用するヒープメモリ量にも注意してください。設定方法については<a href="memory-config.html">メモリ関連</a>を参照してください。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>インデックスのバックアップとリストア</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="インデックスデータのバックアップとリストア">
<p>インデックスデータは Solr により管理されています。インデックスデータは数ギガなどのサイズにもなるケースもあり、Fess の管理画面からはバックアップすることはできません。</p>
<p>インデックスデータのバックアップが必要な場合は、Fess を停止してから solr/core1/data ディレクトリをバックアップしてください。また、リストアする場合はバックアップしたインデックスデータを元に戻してください。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>設定ガイド</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Fess 3.0 設定ガイド">
<p>ここでは、Fess 3.0 の設定に関する説明です。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ログの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ログのファイル">
<p>Fess が出力するログファイルを以下にまとめます。</p>
<table>
<tbody>
<tr>
<th>ファイル名</th>
<th>内容</th>
</tr>
<tr>
<td>webapps/fess/WEB-INF/logs/fess.out</td>
<td>Fess サーバのログ。管理画面や検索画面で操作した時のログなどが出力される。</td>
</tr>
<tr>
<td>webapps/fess/WEB-INF/logs/fess_crawler.out</td>
<td>クロール時のログ。クロール実行時のログが出力される。</td>
</tr>
<tr>
<td>logs/catalina.out</td>
<td>Fess サーバ(Tomcat)のログ。Solr 関連のログが出力される。</td>
</tr>
</tbody>
</table>
<p>動作に問題が発生した場合には上記のログを確認してください。</p>
</section>
<section name="ログの設定">
<p>ログを出力する内容は、webapps/fess/WEB-INF/classes/log4j.xml で設定します。デフォルトでは INFO レベルとして出力しています。</p>
<p>たとえば、Fess が Solr に対してドキュメントを投入処理をするログをより出力したい場合は log4j.xml で以下の部分をコメントアウトから外します。</p>
<source><![CDATA[
<logger name="jp.sf.fess.solr" >
<level value ="debug" />
</logger>
]]></source>
<p>ログ出力に関する細かい設定が必要な場合は、Log4J のドキュメントを参照してください。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>使用メモリー関連の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ヒープメモリーの最大値変更">
<p>クロール設定の内容によっては以下のような OutOfMemory エラーが発生する場合があります。</p>
<source><![CDATA[
java.lang.OutOfMemoryError: Java heap space
]]></source>
<p>発生した場合は ヒープメモリの最大値を増やしてください。 bin/setenv.[sh|bat] に -Xmx1024m のように変更します(この場合は最大値を 1024M に設定)。</p>
<source><![CDATA[
Windowsの場合
...-Dpdfbox.cjk.support=true -Xmx1024m
Unixの場合
...-Dpdfbox.cjk.support=true -Xmx1024m"
]]></source>
</section>
<section name="クローラ側のメモリー最大値変更">
<p>
クローラ側のメモリーの最大値も変更可能です。デフォルトでは、512Mとなっています。
</p>
<p>
変更するには、webapps/fess/WEB-INF/classes/fess.dicon の crawlerJavaOptions のコメントアウトを外し、-Xmx1024m のように変更します(この場合は最大値を 1024M に設定)。
</p>
<source><![CDATA[
<component name="systemHelper" class="jp.sf.fess.helper.SystemHelper">
<property name="adminRole">"fess"</property>
<property name="authenticatedRoles">"role1"</property>
<property name="crawlerJavaOptions">new String[] {
"-Djava.awt.headless=true", "-server", "-XX:+UseGCOverheadLimit",
"-XX:+UseConcMarkSweepGC", "-XX:+CMSIncrementalMode",
"-XX:+UseTLAB", "-Dpdfbox.cjk.support=true", "-Xmx1024m",
"-XX:MaxPermSize=128m" }</property>
</component>
]]></source>
</section>
</body>
</document>

View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>携帯端末情報の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="携帯端末情報の更新">
<p>携帯端末情報は<a class="externalLink" href="http://valueengine.jp/">ValueEngine社</a>より提供されるものを利用しています。最新の携帯端末情報を利用したい場合は、端末プロファイルをダウンロードして、webapps/fess/WEB-INF/classes/device / に _YYYY-MM-DD を取り除いて保存します。 再起動後に変更が有効になります。</p>
<source><![CDATA[
ProfileData_YYYY-MM-DD.csv -> ProfileData.csv
UserAgent_YYYY-MM-DD.csv -> UserAgent.csv
DisplayInfo_YYYY-MM-DD.csv -> DisplayInfo.csv
]]></source>
</section>
</body>
</document>

View file

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>パスのエンコーディングの変更</title>
<author>曽根 孝明</author>
</properties>
<body>
<section name="パスのエンコーディングの変更">
<p>html以外のファイルで、参照元とファイル名の文字コードが異なる場合、検索結果のリンクの文字列が文字化けします。</p>
<p>たとえば、テスト.txt というファイルの中身がUTF-8 で書かれていて、ファイル名が Shift_JIS の場合、リンクの文字列が文字化けします。</p>
</section>
<subsection name="設定方法">
<p>例えば下記のように webapps/fess/WEB-INF/classes/s2robot_transformer.dicon を修正することで、パスを Shift_JIS で解決するようになります。</p>
<source><![CDATA[
<component name="fessFileTransformer" class="jp.sf.fess.transformer.FessFileTransformer" instance="singleton">
<property name="name">"fessFileTransformer"</property>
<property name="ignoreEmptyContent">true</property>
<property name="encoding">"Shift_JIS"</property>
</component>
]]></source>
</subsection>
</body>
</document>

View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ステミング設定</title>
<author>曽根 孝明</author>
</properties>
<body>
<section name="ステミングについて">
<p>Fess ではインデックス作成や検索の際、ステミングという処理が行われています。</p>
<p>これは英単語を正規化する処理であり、例えば、recharging や rechargable といった単語は recharg という形に正規化されます。これによって、recharging という語で検索を行った場合でもrechargableという語にヒットし、検索漏れが少なくなることが期待されます。</p>
</section>
<section name="protwords.txtについて">
<p>ステミング処理は基本的にルールベースの処理であるため、意図しない正規化が行われてしまう可能性があります。例えば、Maine(アメリカの州の名前)という語は main に正規化されてしまいます。</p>
<p>このような場合、protwords.txt に Maine を追加することで、ステミング処理の対象から除外できます。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>プロキシの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="クローラ用プロキシの設定">
<p>イントラネット内から外部サイトをクロールするような場合は、ファイアフォールにクロールがブロックされてしまうかもしれません。そのような場合にはクローラ用のプロキシを設定してください。</p>
</section>
<subsection name="設定方法">
<p>下記の内容で webapps/fess/WEB-INF/classes/s2robot_client.dicon を作成することでプロキシが設定されます。</p>
<source><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN"
"http://www.seasar.org/dtd/components24.dtd">
<components>
<include path="s2robot_robotstxt.dicon"/>
<include path="s2robot_contentlength.dicon"/>
<component name="httpClient" class="org.seasar.robot.client.http.CommonsHttpClient" instance="prototype">
<property name="cookiePolicy">@org.apache.commons.httpclient.cookie.CookiePolicy@BROWSER_COMPATIBILITY</property>
<property name="proxyHost">"プロキシホスト名"</property>
<property name="proxyPort">プロキシポート</property>
<!-- プロキシに認証がある場合
<property name="proxyCredentials">
<component class="org.apache.commons.httpclient.UsernamePasswordCredentials">
<arg>"プロキシ用ユーザー名"</arg>
<arg>"プロキシ用パスワード"</arg>
</component>
</property>
-->
</component>
<component name="fsClient" class="org.seasar.robot.client.fs.FileSystemClient" instance="prototype">
<property name="charset">"UTF-8"</property>
</component>
<component name="clientFactory" class="org.seasar.robot.client.S2RobotClientFactory" instance="prototype">
<initMethod name="addClient">
<arg>{"http:.*", "https:.*"}</arg>
<arg>httpClient</arg>
</initMethod>
<initMethod name="addClient">
<arg>"file:.*"</arg>
<arg>fsClient</arg>
</initMethod>
</component>
</components>
]]></source>
</subsection>
</body>
</document>

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>レプリケーションの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="レプリケーションの設定">
<p>Fess は指定されたパスにある Solr のインデックスデータをコピーすることができます。クロールおよびインデックス作成用の Fess と検索用 Fess の 2 台のサーバーを構築することで、インデックス作成時にかかる負荷を分散することができます。</p>
<p>Fess のレプリケーション機能を利用するためには Solr のインデックスファイルを NFS などの共有ディスクにおいて、それぞれの Fess から参照できる必要があります。</p>
</section>
<section name="構築方法">
<subsection name="インデックス作成用 Fess の構築">
<p>Fess をダウンロードして、インストールします。<code>/net/server1/usr/local/fess/</code> にインストールしたとします。</p>
<p>Fess の起動後、通常の構築と同様にクロール設定を登録して、クロールしてインデックスを作成してください (インデックス作成用 Fess の構築手順は通常の構築手順と特に変わりません)。</p>
</subsection>
<subsection name="検索用 Fess の構築">
<p>Fess をダウンロードして、インストールします。<code>/net/server2/usr/local/fess/</code> にインストールしたとします。</p>
<p>Fess の起動後、管理画面のクロール全般の設定で「レプリケーション機能」のチェックボックスを有効にして、「スナップショットパス」を指定します。スナップショットパスは、インデックス作成用 Fess のインデックスの場所を指定します。今回の場合では、<code>/net/server1/usr/local/fess//solr/core1/data/index</code> になります。</p>
<img src="/images/ja/3.0/crawl-2.png" alt="レプリケーション"/>
<p>更新ボタンを押下してデータを保存すると、スケジュールで設定された時間でインデックスのレプリケーションが実行されます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,97 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ロールベース検索の設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ロールベース検索とは">
<p>Fess では任意の認証システムで認証されたユーザーの認証情報を元に検索結果を出し分けることができます。たとえば、ロールaを持つユーザーAは検索結果にロールaの情報が表示されるが、ロールaを持たないユーザーBは検索してもそれが表示されません。この機能を利用することで、ポータルやシングルサインオン環境でログインしているユーザーの所属する部門別や役職別などに検索を実現することができます。</p>
<p>Fess のロールベース検索ではロール情報を以下より取得できます。</p>
<ul>
<li>リクエストパラメータ</li>
<li>リクエストヘッダー</li>
<li>クッキー</li>
<li>J2EE の認証情報</li>
</ul>
<p>ポータルやエージェント型シングルサインオンシステムでは認証時に Fess の稼働しているドメインとパスに対してクッキーで認証情報を保存することで、ロール情報を取得することができます。また、リバースプロキシ型シングルサインオンシステムでは Fess へのアクセス時にリクエストパラメータやリクエストヘッダーに認証情報を付加することでロール情報を取得することができます。</p>
</section>
<section name="ロールベース検索の設定">
<p>ここでは J2EE の認証情報を利用したロールベース検索の設定方法を説明します。</p>
<subsection name="tomcat-users.xmlの設定">
<p>conf/tomcat-users.xml にロールとユーザーを追加します。今回は role1 ロールでロールベース検索を行います。ログインするユーザーは role1 になります。</p>
<source><![CDATA[
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="fess"/>
<role rolename="solr"/>
<role rolename="role1"/>
<user username="admin" password="admin" roles="fess"/>
<user username="solradmin" password="solradmin" roles="solr"/>
<user username="role1" password="role1" roles="role1"/>
</tomcat-users>
]]></source>
</subsection>
<subsection name="app.diconの設定">
<p>webapps/fess/WEB-INF/classes/app.dicon を以下のように設定します。</p>
<source><![CDATA[
:
<component name="roleQueryHelper" class="jp.sf.fess.helper.impl.RoleQueryHelperImpl">
<property name="defaultRoleList">
{"guest"}
</property>
</component>
:
]]></source>
<p>defaultRoleList を設定することで、認証情報がない場合のロール情報を設定できます。設定することでログインしていないユーザーに対して、ロールが必要な検索結果を表示させないようにできます。</p>
</subsection>
<subsection name="fess.diconの設定">
<p>webapps/fess/WEB-INF/classes/fess.dicon を以下のように設定します。</p>
<source><![CDATA[
:
<component name="systemHelper" class="jp.sf.fess.helper.SystemHelper">
<property name="authenticatedRoles">"role1"</property>
</component>
:
]]></source>
<p>authenticatedRoles はカンマ (,) 区切りで複数記述することができます。</p>
</subsection>
<subsection name="web.xmlの設定">
<p>webapps/fess/WEB-INF/web.xml を以下のように設定します。</p>
<source><![CDATA[
:
<security-constraint>
<web-resource-collection>
<web-resource-name>Fess Authentication</web-resource-name>
<url-pattern>/login/login</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>fess</role-name>
<role-name>role1</role-name>
</auth-constraint>
</security-constraint>
:
<security-role>
<role-name>fess</role-name>
</security-role>
<security-role>
<role-name>role1</role-name>
</security-role>
:
]]></source>
</subsection>
<subsection name="Fess の管理画面での設定">
<p>Fess を起動して管理者としてログインします。メニューのロールから設定名を Role1 (設定名は任意)、値を role1 でロールを登録します。あとは role1 を持つユーザーで利用したいクロール設定で、Role1 を選択してクロール設定を登録してクロールします。</p>
</subsection>
<subsection name="ロールでログイン">
<p>管理画面からログアウトします。role1 ユーザーでログインします。ログインに成功すると検索画面のトップにリダイレクトされます。</p>
<p>通常通り検索すると、クロール設定で Role1 のロール設定されたものだけが表示されます。</p>
<p>また、ログインしていない状態での検索は、guest ユーザーによる検索となります。</p>
</subsection>
<subsection name="ロールのログアウト">
<p>管理者以外のロールでログインした状態で http://localhost:8080/fess/admin にアクセスすると、ログアウトするかどうかの画面が表示されます。ログアウトボタンを押下することでログアウトされます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ポート変更</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ポートの変更">
<p>Fess がデフォルトで利用するポートは 8080 になります。 変更するには以下の手順で変更します。</p>
<subsection name="Tomcat のポート変更">
<p>Fess が利用している Tomcat のポートを変更します。 変更は conf/server.xml に記述されている以下のものを変更します。</p>
<ul>
<li>8080: HTTP アクセスポート</li>
<li>8005: シャットダウンポート</li>
<li>8009: AJP ポート</li>
<li>8443: SSL の HTTP アクセスポート (デフォルトは無効)</li>
</ul>
</subsection>
<subsection name="Solr の設定">
<p>標準構成では、Solr も同じ Tomcat の設定を利用しているので、Tomcat のポートを変更した場合は、Fess の Solr サーバーの参照先情報も変更する必要があります。 webapps/fess/WEB-INF/classes/fess_solr.dicon を変更します。</p>
<source><![CDATA[
<arg>"http://localhost:8080/solr"</arg>
]]></source>
<p>
<b>注: Tomcat のポートを変更した場合は上記のポートを同様に変更しないと、Solr サーバーにアクセスできないために検索画面やインデックス更新時にエラーが表示されます。</b>
</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>Solrのダイナミックフィールドの利用方法</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Solr のダイナミックフィールド">
<p>Solr は対象ドキュメントを項目(フィールド)ごとに登録するためにスキーマを定義されています。Fess で利用する Solr のスキーマは solr/core1/conf/schema.xml に定義されています。title や content など標準のフィールドと、自由にフィールド名を定義できるダイナミックフィールドが定義されています。Fess の schema.xml で利用できるダイナミックフィールドは以下のものになります。詳細なパラメータ値については Solr のドキュメントを参照してください。</p>
<source><![CDATA[
<dynamicField name="*_s" type="string" indexed="true" stored="true"/>
<dynamicField name="*_t" type="text" indexed="true" stored="true"/>
<dynamicField name="*_b" type="boolean" indexed="true" stored="true"/>
<dynamicField name="*_i" type="int" indexed="true" stored="true"/>
<dynamicField name="*_l" type="long" indexed="true" stored="true"/>
<dynamicField name="*_f" type="float" indexed="true" stored="true"/>
<dynamicField name="*_d" type="double" indexed="true" stored="true"/>
<dynamicField name="*_ti" type="tint" indexed="true" stored="true"/>
<dynamicField name="*_tl" type="tlong" indexed="true" stored="true"/>
<dynamicField name="*_tf" type="tfloat" indexed="true" stored="true"/>
<dynamicField name="*_td" type="tdouble" indexed="true" stored="true"/>
<dynamicField name="*_tdt" type="tdate" indexed="true" stored="true"/>
<dynamicField name="*_pi" type="pint" indexed="true" stored="true"/>
<dynamicField name="*_pl" type="plong" indexed="true" stored="true"/>
<dynamicField name="*_pf" type="pfloat" indexed="true" stored="true"/>
<dynamicField name="*_pd" type="pdouble" indexed="true" stored="true"/>
<dynamicField name="*_pdt" type="pdate" indexed="true" stored="true"/>
<dynamicField name="*_si" type="sint" indexed="true" stored="true"/>
<dynamicField name="*_sl" type="slong" indexed="true" stored="true"/>
<dynamicField name="*_sf" type="sfloat" indexed="true" stored="true"/>
<dynamicField name="*_sd" type="sdouble" indexed="true" stored="true"/>
<dynamicField name="*_dt" type="date" indexed="true" stored="true"/>
]]></source>
</section>
<section name="利用方法">
<p>ダイナミックフィールドを利用する場面が多いのはデータベースクロールなどでデータストアクロール設定で登録するなどだと思います。データベースクロールでダイナミックフィールドに登録する方法は、スクリプトに other_t = hoge のように記述することで hoge カラムのデータを Solr の other_t フィールドに入れることができます。</p>
<p>次にダイナミックフィールドに保存されたデータを Solr から取り出すためには webapps/fess/WEB-INF/classes/app.dicon に利用するフィールドを追加する必要があります。以下のように other_t を追加します。</p>
<source><![CDATA[
<component name="queryHelper" class="jp.sf.fess.helper.impl.QueryHelperImpl">
<property name="responseFields">new String[]{"id", "score", "boost",
"contentLength", "host", "site", "lastModified", "mimetype",
"tstamp", "title", "digest", "url", "other_t" }</property>
</component>
]]></source>
<p>上記の設定で Solr から値を取得できているので、ページ上に表示するために JSP ファイルを編集します。管理画面にログインして、デザインを表示します。検索結果の表示は検索結果ページ(コンテンツ)で表示されるので、この JSP ファイルを編集します。other_t の値を表示したい箇所で ${f:h(doc.other_t)} とすることで登録した値を表示することができます。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>Solr障害時の動作</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Solr障害時の動作">
<p>Fess では Solr サーバーをグループ化して、複数のグループを管理することができます。Fess はサーバーおよびグループの情報を保持して、Solr サーバーにアクセスできなくなった場合はサーバー及びグループの状態を変更します。</p>
<p>Solr サーバーの状態情報は、管理画面のシステム設定で変更することができます。minActiveServer、maxErrorCount、maxRetryStatusCheckCount、maxRetryUpdateQueryCount は webapps/fess/WEB-INF/classes/fess_solr.dicon で定義することができます。</p>
<subsection name="障害の Solr グループの動作">
<ul>
<li>Solr グループ内に有効状態の Solr サーバー台数が minActiveServer 以下になった場合は Solr グループが無効状態になります。</li>
<li>Solr グループ内に有効状態の Solr サーバー台数が minActiveServer 以下になっているが Solr グループが無効状態になっていない場合、無効状態の Solr サーバーの状態を maxRetryStatusCheckCount 回確認して、Solr サーバーにアクセスできる場合は Solr サーバーの状態を無効状態から有効状態に変更します。インデックス破損状態の Solr サーバーはアクセスできたとしても有効状態に変更されません。</li>
<li>無効状態の Solr グループは利用されません。</li>
<li>Solr グループを有効状態にするためには、管理画面のシステム設定で Solr グループ内の Solr サーバーの状態を有効に変更します。</li>
</ul>
</subsection>
<subsection name="検索時の障害の動作">
<ul>
<li>検索クエリーは有効状態の Solr グループに送信できます。。</li>
<li>検索クエリーは有効状態の Solr サーバーだけに送信されます。</li>
<li>Solr グループ内に複数の Solr サーバーが登録されている場合は、利用している回数が少ない Solr サーバーに検索クエリーを送信します。</li>
<li>Solr サーバーに送信した検索クエリーが maxErrorCount 以上失敗した場合は Solr サーバーを無効状態に変更します。</li>
</ul>
</subsection>
<subsection name="更新時の障害の動作">
<ul>
<li>更新クエリーは有効状態の Solr グループに送信できます。。</li>
<li>更新クエリーは有効状態の Solr サーバーだけに送信されます。</li>
<li>Solr グループ内に複数の Solr サーバーが登録されている場合は、有効状態の Solr サーバーすべてに更新クエリーを送信します。</li>
<li>Solr サーバーに送信した更新クエリーが maxRetryUpdateQueryCount 以上失敗した場合は Solr サーバーをインデックス破損状態に変更します。</li>
</ul>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>索引文字列抽出についての設定</title>
<author>曽根 孝明</author>
</properties>
<body>
<section name="索引文字列抽出について">
<p>検索のためのインデックスを作成する際、索引として登録するために文書を切り分ける必要があります。</p>
<p>このために使用されるのが、トークナイザーです。</p>
<p>基本的に、トークナイザーによって切り分けられた単位よりも小さいものは、検索を行ってもヒットしません。</p>
<p>例えば、「東京都に住む」という文を考えます。いま、この文が「東京都」「に」「住む」というようにトークナイザーによって分割されたとします。この場合、「東京都」という語で検索を行った場合はヒットします。しかし、「京都」という語で検索を行った場合はヒットしません。</p>
<p>そのためトークナイザーの選択は重要です。</p>
<p>Fess の場合デフォルトでは CJKTokenizer が使用されていますが、schema.xml の analyzer 部分を設定することでトークナイザを変更することができます。</p>
</section>
<subsection name="CJKTokenizerについて">
<p>CJKTokenizer 日本語のようなマルチバイトの文字列に対しては bi-gram 、つまり二文字ずつインデックスを作成します。この場合、1文字の語を検索することはできません。</p>
</subsection>
<subsection name="StandardTokenizerについて">
<p>StandardTokenizer は日本語のようなマルチバイトの文字列に対しては uni-gram 、つまり一文字ずつインデックスを作成します。そのため、検索漏れが少なくなります。また、CJKTokenizerの場合、1文字のクエリを検索することができませんが、StandardTokenizerを使用すると検索可能になります。</p>
<p>下記の例のように schema.xml の analyzer 部分を変更することで、StandardTokenizer を使用できます。</p>
<source><![CDATA[
:
<types>
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
:
]]></source>
</subsection>
</body>
</document>

View file

@ -0,0 +1,49 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>Windowsサービスへの登録</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Windowsサービスとしての登録">
<p>Windows 環境であれば Fess を Windows のサービスとして登録することができます。サービスの登録方法は Tomcat と同様です。</p>
<subsection name="事前準備">
<p>Windows のサービスとして登録する場合、クロールプロセスは Windows のシステムの環境変数を見にいくため、<b>Java の JAVA_HOME をシステムの環境変数に登録し</b>、同様に <b>%JAVA_HOME%\bin も Path に追加する</b>必要があります。</p>
</subsection>
<subsection name="設定">
<p>webapps\fess\WEB-INF\classes\fess.dicon を編集して、-server オプションを取り除きます。(3.1.0 から pdfbox.cjk.support オプションは不要)</p>
<source><![CDATA[
<component name="systemHelper" class="jp.sf.fess.helper.SystemHelper">
<!--
<property name="adminRole">"fess"</property>
<property name="authenticatedRoles">"role1"</property>
-->
<property name="crawlerJavaOptions">new String[] {
"-Djava.awt.headless=true", "-XX:+UseGCOverheadLimit",
"-XX:+UseConcMarkSweepGC", "-XX:+CMSIncrementalMode",
"-XX:+UseTLAB", "-Xmx512m", "-XX:MaxPermSize=128m"
}</property>
</component>
]]></source>
</subsection>
<subsection name="登録方法">
<p>まず、Fess のインストール後、コマンドプロンプトから service.bat を実行します (Vista などでは管理者として起動する必要があります)。Fess は C:\Java\fess-server-3.0.0 にインストールしたものとします。</p>
<source><![CDATA[
> cd C:\Java\fess-server-3.0.0\bin
> service.bat install fess
...
The service 'fess' has been installed.
]]></source>
</subsection>
<subsection name="設定の確認方法">
<p>以下のようにすることで Fess 用のプロパティを確認できます。以下を実行すると、Tomcat のプロパティ設定ウィンドウが表示されます。</p>
<source><![CDATA[
> tomcat6w.exe //ES//fess
]]></source>
</subsection>
<subsection name="サービスの設定">
<p>コントロールパネル - 管理ツール - サービスで管理ツールを表示して、通常の Windows のサービスと同様に自動起動などが設定できます。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>検索ガイド</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="Fess 3.0 検索ガイド">
<p>ここでは、Fess 3.0 の検索方法に関する説明です。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>検索フィールド指定による検索</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="フィールド指定検索">
<p>Fess ではクロール結果をタイトルや本文などの各フィールドに保存されています。それらのフィールドを指定して検索することができます。</p>
<p>デフォルトでは以下のフィールドを指定して検索することができます。</p>
<table>
<tbody>
<tr>
<th>url</th>
<td>クロールした URL</td>
</tr>
<tr>
<th>host</th>
<td>クロールした URL に含まれていたホスト名</td>
</tr>
<tr>
<th>site</th>
<td>クロールした URL に含まれていたサイト名</td>
</tr>
<tr>
<th>title</th>
<td>タイトル</td>
</tr>
<tr>
<th>content</th>
<td>本文</td>
</tr>
<tr>
<th>contentLength</th>
<td>クロールしたコンテンツサイズ</td>
</tr>
<tr>
<th>lastModified</th>
<td>クロールしたコンテンツの最終更新日時</td>
</tr>
<tr>
<th>mimetype</th>
<td>コンテンツの MIME タイプ</td>
</tr>
</tbody>
</table>
<p>フィールド指定をしていない場合は、title と content を対象に検索します。</p>
<subsection name="検索方法">
<p>フィールド指定検索をする場合は、「フィールド名:検索語」のように検索フォームに入力して検索します。</p>
<p>タイトルに対して、Fess を検索語として検索します。</p>
<source><![CDATA[
title:Fess
]]></source>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ラベルによる検索</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ラベルによる検索">
<p>管理画面でラベルを登録しておくことで、検索画面でラベルによる検索が可能になります。検索結果を分類したい場合にラベルを利用することができます。ラベルを登録していない場合は、ラベルのプルダウンボックスは表示されません。</p>
<img src="/images/ja/3.0/search-label-1.png" alt="ラベルによる検索"/>
<p>ラベルを設定してインデックスを作成することで、ラベルで指定されたクロール設定ごとに検索をすることができます。ラベルを指定しない検索は通常と同様の全件検索になります。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>NOT 検索</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="NOT 検索 (3.1以降)">
<p>ある単語を含まないドキュメントを検索したい場合に NOT 検索が利用できます。
NOT 検索は含まない単語の前に NOT を付けて検索します。
NOT は半角大文字で前後にスペースが必要です。</p>
<p>たとえば、「検索語1」が含まれるが「検索語2」を含まないドキュメントを検索したい場合は、「検索語1 NOT 検索語2」を入力して検索します。</p>
<p>NOT 検索は負荷が高いので注意が必要です。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>OR 検索</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="OR 検索 (3.1以降)">
<p>検索語のどれかが含まれるドキュメントを検索したい場合には OR 検索を利用します。
検索語入力欄に複数単語を記述した場合、デフォルトでは AND 検索になります。
OR 検索をしたい場合は検索語間に OR を記述します。
OR は大文字で記述して、前後にスペースが必要です。</p>
<p>たとえば、「検索語1」と「検索語2」のどちらかが含まれるドキュメントを検索したい場合は、「検索語1 OR 検索語2」を入力して検索します。
OR で複数語をつなぐことも可能です。</p>
</section>
</body>
</document>

View file

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>検索のソート</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ソート検索">
<p>検索日時などのフィールドを指定して検索結果をソートすることができます。</p>
<p>デフォルトでは以下のフィールドを指定してソートすることができます。</p>
<table>
<tbody>
<tr>
<th>tstamp</th>
<td>クロールした日時</td>
</tr>
<tr>
<th>contentLength</th>
<td>クロールしたコンテンツサイズ</td>
</tr>
<tr>
<th>lastModified</th>
<td>クロールしたコンテンツの最終更新日時</td>
</tr>
</tbody>
</table>
<subsection name="ソート方法">
<p>ソートをする場合は、「sort:フィールド名」のように検索フォームに入力して検索します。</p>
<p>以下は Fess を検索語として、コンテンツサイズを昇順にソートします。</p>
<source><![CDATA[
Fess sort:contentLength
]]></source>
<p>降順にソートする場合は以下のようにします。</p>
<source><![CDATA[
Fess sort:contentLength.desc
]]></source>
<p>複数のフィールドでソートする場合は以下のように , 区切りで指定します。</p>
<source><![CDATA[
Fess sort:contentLength.desc,lastModified
]]></source>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>ブラウザタイプの設定</title>
<author>菅谷 信介</author>
</properties>
<body>
<section name="ブラウザタイプの設定">
<p>ここでは、ブラウザタイプに関わる設定について説明します。 ブラウザタイプは検索結果データに付加され、閲覧ブラウザの種類ごとに検索結果を出し分けることができます。</p>
<subsection name="設定方法">
<p>管理者アカウントでログイン後、メニューのブラウザタイプをクリックします。</p>
<img src="/images/ja/4.0/browserType-1.png" alt="ブラウザタイプの設定" />
</subsection>
<subsection name="ブラウザタイプ">
<p>表示名と値を設定できます。 新規に閲覧端末を増やしたい場合などに利用します。 特別なカスタマイズが必要場合にしか、利用する必要はありません。</p>
</subsection>
</section>
</body>
</document>

View file

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<document>
<properties>
<title>設定ウィザード</title>
<author>曽根 孝明</author>
</properties>
<body>
<section name="設定ウィザード">
<p>ここでは、設定ウィザードの紹介をします。</p>
<p>設定ウィザードを利用することで、簡単に fess をセットアップすることができます。</p>
<subsection name="設定ウィザードの利用方法">
<p>管理者アカウントでログイン後、メニューの設定ウィザードをクリックします。</p>
<img src="/images/ja/4.0/config-wizard-1.png" alt="設定ウィザード" />
<p>まず始めに、スケジュールの設定を行います。</p>
<p>ここで設定した時間に fess はクローリングを行い、インデックスを作成します。</p>
<p>デフォルトでは、毎日0時0分です。</p>
<img src="/images/ja/4.0/config-wizard-2.png" alt="スケジュールの設定" />
<p>次に、クロール設定を行います。</p>
<p>クロール設定は、検索対象するURIを登録するものです。</p>
<p>クロール設定名の部分は、識別しやすい任意の名前をいれてください。</p>
<p>クロールパスの部分には、検索対象としたい URI を入れてください。</p>
<img src="/images/ja/4.0/config-wizard-3.png" alt="クロール設定" />
<p>例えば、http://example.com を検索対象としたい場合、以下のようになります。</p>
<img src="/images/ja/4.0/config-wizard-4.png" alt="クロール設定例" />
<p>これで設定はおわりです。</p>
<p>「クロール開始」ボタンを押下することで、クロールが開始されます。「完了」ボタンを押下した場合、スケジューリングの設定で指定した時間になるまでは、クロールが開始されません。</p>
<img src="/images/ja/4.0/config-wizard-5.png" alt="クロール開始" />
</subsection>
<subsection name="設定内容の変更">
<p>設定ウィザードで設定した内容は、クロール全般、ウェブ、ファイルシステムから変更できます。</p>
</subsection>
</section>
</body>
</document>

Some files were not shown because too many files have changed in this diff Show more