В этом разделе описаны директивы, относящиеся к процессу индексирования через стандартный источник ftds.
Если какая-либо директива отсутствует в конфигурационном файле источника ftds, для соответствующих параметров будут использованы значения по умолчанию.
Конфигурационный файл индексатора
Пример
a)
b)
c)
d)
<DataSrc id="ftds">
Name : myname
<Ftds>
...
</Ftds>
</DataSrc>
Конфигурационный файл источника ftds
Пример
<Ftds>
DefaultOptions :
AllowFollow :
DisallowFollow : /\?C=[M|N|S|D];O=[A|D]
Pipe : msxsl.exe "$1" "C:/foo/bar/transform.xsl"
IndexPipe : test.exe
SearchPipe : python.exe foobar.py
<Folder inherited="no">
# Path : C:\jdk1.5.0_05\docs\api\java\util
Options : Set jdk=jdk15, Set group=api, Set group=java, Set group=util
</Folder>
<Folder inherited="no">
Path : api/java/applet/
Options : Set jdk=jdk15, Set group=api, Set group=java, Set group=applet
</Folder>
<Folder inherited="no">
Path : api/java/awt/
Options : Set jdk=jdk15, Set group=api, Set group=java, Set group=awt
</Folder>
...
<Extensions>
text/html : .html, .htm, .shtml
text/plain : .txt, .java
text/rtf : .rtf
application/msword : .doc
application/pdf : .pdf
application/vnd.ms-excel : .xls
application/vnd.ms-powerpoint : .ppt
application/x-shockwave-flash : .swf
audio/mpeg : .mp3
</Extensions>
</Ftds>
Общие директивы
| Директива |
Описание |
Значение |
|
DefaultOptions
|
Задает значение по умолчанию, которое будет использоваться в директиве Options в секции Folder. Аргументы этой директивы описаны в разделе Options. |
Значение по умолчанию: не задано.
|
Пример: <Ftds>
DefaultOptions : utf-8
...
</Ftds>
|
Директивы, определяющие область индексирования
| Директива |
Описание |
Значение |
|
AllowFollow
|
Определяет индексатору правила обхода сайта через регулярное выражение. Обходиться будут только те документы, URL которых содержит подстроку, удовлетворяющую этому регулярному выражению. |
Значение по умолчанию: не задано. |
|
Примеры:
! проиндексировать файлы только из архивов за 1990-1999 годы и
! из каталога archives
AllowFollow : /(199[0-9]|archive)/
! проиндексировать файлы только из тех каталогов, имя
! которых состоит из 4-х цифр
AllowFollow : /([0-9]{4})/
|
|
DisallowFollow
|
Запрещает индексатору обходить страницы сайта, URL которых содержит подстроку, удовлетворяющие заданному регулярному выражению. |
Значение по умолчанию: не задано. |
|
Пример:
! Исключать из индексирования файлы _index.html,
! _index.htm, default.html и default.htm
DisallowFollow /(_index|default)[.]htm[l]?
! Исключать из индексирования файлы из каталогов, имя
! которых состоит из 4-х цифр
DisallowFollow /([0-9]{4})/
|
Директивы обработки документа
| Директива |
Описание |
Значение |
|
Pipe
|
Задает шаблон команды, которая выполняется для каждого индексируемого файла. Если в шаблоне есть $1 - оно заменяется на имя файла; если нет - имя файла добавляется к шаблону через пробел. Затем команда запускается, и ее стандартный вывод направляется в парсер вместо содержимого файла.
Можно отдельно задавать фильтры для индексации и для поиска директивами IndexPipe и SearchPipe, в том же формате.
|
Значение по умолчанию: не задано. |
|
Примеры:
! обработать каждый документ используя XSL шаблон
Pipe : msxsl.exe "$1" C:\foo\bar\transform.xsl
! для каждого документа выполнить скрипт foo_bar.py с аргументом;
! в качестве 1 аргумента программы передать имя документа
Pipe : /usr/bin/python foo_bar.py
|
|
IndexPipe
|
Задает программу-фильтр предобработки документа при индексировании. |
Значение по умолчанию: не задано |
|
Пример:
! Обработать каждый документ используя XSL шаблон
IndexPipe : transform.exe "$1" transform.xsl
|
|
SearchPipe
|
Задает программу-фильтр постобработки документа при поиске. |
Значение по умолчанию: не задано |
|
Пример:
! Обработать каждый документ используя XSL шаблон
SearchPipe : transform.exe "$1" transform.xsl
|
Конфигурация области индексирования (Секция <Folder>)
Конфигурационный файл может включать несколько секций Folder, каждая из которых задает область индексирования.
| Директива |
Описание |
|
Path
|
Директива определяет локальный путь в файловой системе.
Каждая секция Folder должна включать не более одной директивы Path.
|
|
Options
|
Параметры индексирования документов в данной области индексирования.
Параметры индексирования сначала наследуются от области индексирования верхнего уровня, если такая есть, или от значения директивы DefaultOptions, или от значения по умолчанию, а затем дополняются параметрами, указанными в данной директиве.
Каждая секция Folder должна включать не более одной директивы Options.
Аргументы директивы описаны в разделе Директива Options.
|
Секция Folder может иметь атрибут inherited. Значение атрибута, равное "no", отменяет наследование значений директив и поисковых атрибутов.
Примеры:
<Folder>
Path : /book/part1/
Options : Set group=part1
</Folder>
<Folder>
Path : /book/part1/chapter1/
Options : Set group=chapter1
</Folder>
В приведенной конфигурации вторая секция наследует значение "part1" поискового атрибута group от предыдущей области индексирования (потому что путь /book/part1/chapter1/ входит в путь /book/part1/).
Чтобы этого не происходило, используйте:
<Folder inherited="no">
Path : /book/part1/chapter1/
Options : Set group=chapter1
</Folder>
Секция <Extensions>
Секция Extensions позволяет задать фильтр документов по их расширениям, и установить связь между значениями MimeType секции DocFormat и расширением файла.
Значения по умолчанию:
| MIME |
Расширение |
| text/html |
.html, .htm, .shtml |
| text/plain |
.txt |
| audio/mpeg |
.mp3 |
| text/rtf |
.rtf |
| application/pdf |
.pdf |
| application/msword |
.doc |
| application/vnd.ms-excel |
.xls |
| application/vnd.ms-powerpoint |
.ppt |
| application/x-shockwave-flash |
.swf |
Директива Options
Директива Options позволяет задать набор документных атрибутов типа LITERAL, дополнительно к атрибутам, назначаемым парсером во время индексирования документа.
Определение документного атрибута для данной области индексирования
Options : Unset name=value
Отмена документного атрибута для данной области индексирования.
Использование данных аргументов позволяет включить документы в определенные тематические разделы на основании структуры каталогов файловой системы, в которых находятся документы. Альтернативно, во время индексирования документы могут получить поисковые документные атрибуты в соответствии с их содержанием. См. обсуждение в разделе Документы, зоны и атрибуты.
Строка name=value не должна включать пробелы. Чтобы удалить для данной области индексирования все унаследованные атрибуты, используйте атрибут inherited секции Folder.
Пример:
Директива Options позволяет задать кодировку, используемую в документах.
recognize
Всегда распознавать кодировку символов автоматически.
<значение>
Использовать одно из указанных ниже в таблице кодировок значений.
| Кодировка |
Обозначение |
| WinCyrillic |
windows-1251, cp1251 |
| MacCyrillic |
MacCyrillic, MacRussian |
| DOSCyrillic |
IBM855 или cp855 |
| DOSCyrillicRussian |
IBM866, cp866 |
| ISOLatinCyrillic |
ISO-8859-5, iso-ir-144 |
| WinLatin1 |
windows-1252, cp1252 |
| WinLatin2 |
windows-1250, cp1250 |
| KOI8R |
KOI8-R, csKOI8R |
| ISO8859_2 |
iso-2, iso_8859-2 |
| UTF8 |
utf8, utf-8 |
Значение по умолчанию: recognize