ВебмастерМетрикаВиджетыРекламная сетьДиректПоиск для сайтаAPI
Войти

Руководство по установке и эксплуатации

В формате PDF

Индексирование файловых каталогов

В этом разделе описаны директивы, относящиеся к процессу индексирования через стандартный источник ftds.

Если какая-либо директива отсутствует в конфигурационном файле источника ftds, для соответствующих параметров будут использованы значения по умолчанию.

Конфигурационный файл индексатора

Пример

a)

<DataSrc>
    Name : myname
    Module : libydftds.so
    Symbol : FTDS_DATASRC_LIB
    Config : ftds.cfg
</DataSrc>

b)

<DataSrc>
    Name : myname
    Module : libydftds.so
    Symbol : FTDS_DATASRC_LIB
    <Ftds>
        ...
    </Ftds>
</DataSrc>

c)

<DataSrc id="ftds">
    Name : myname
    Config : ftds.cfg
</DataSrc>

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 : Set name=value

Определение документного атрибута для данной области индексирования

Options : Unset name=value

Отмена документного атрибута для данной области индексирования.

Использование данных аргументов позволяет включить документы в определенные тематические разделы на основании структуры каталогов файловой системы, в которых находятся документы. Альтернативно, во время индексирования документы могут получить поисковые документные атрибуты в соответствии с их содержанием. См. обсуждение в разделе Документы, зоны и атрибуты.

Строка name=value не должна включать пробелы. Чтобы удалить для данной области индексирования все унаследованные атрибуты, используйте атрибут inherited секции Folder.

Пример:

<Folder inherited="no">

Директива 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