Директива Options
В этом разделе описаны аргументы директивы Options, которая может встречаться в секциях IndexedArea и DataSource, а также директивы DefaultAreaOptions из главной секции конфигурационного файла индексатора. С помощью аргументов директивы Options можно задать следующие параметры областей индексирования.
Режим получения URL документаFindLinksПолучать URL документов с помощью распознавания гипертекстовых ссылок в тексте уже проиндексированных документов. Этот аргумент используется только в секции IndexedArea.
FindDirПолучать URL документов считыванием оглавлений файловых директорий локальной сети. Этот аргумент используется только в секции IndexedArea.
NoUrlCaseFoldСчитать URL документов регистро-зависимыми, в соответствии со стандартом.
UrlCaseFoldПолучать URL документов регистро-независимыми, например, при индексировании документов с веб-серверов под Windows.
IndexFollowИндексировать документы и распознавать гипертекстовые ссылки для получения URL-ов новых документов.
IndexNofollowИндексировать документы, но не распознавать гипертекстовые ссылки для получения URL-ов новых документов.
NoindexFollowНе индексировать документы, но просматривать их и распознавать находящиеся в них гипертекстовые ссылки для получения URL-ов новых документов.
Режим получения содержимого документаGetFileполучать содержимое документов с помощью чтения файлов, доступных в локальной сети, с использованием протоколов операционной системы. Этот аргумент используется только в секции IndexedArea.
GetHttpполучать содержимое документов с помощью HTTP-протокола, посылая заголовки по умолчанию. Этот аргумент используется только в секции IndexedArea.
GetHttp:configidполучать содержимое документов с помощью HTTP-протокола, посылая заголовки, сконфигурированные в конфигурации, имеющей идентификатор configid. Идентификатор configid либо задает локальный путь к файлу с конфигурацией HTTP-запросов, абсолютный или относительно WorkDir, либо определяет значение атрибута name секции HttpOptions в текущем конфигурационном файле.
Этот аргумент используется только в секции IndexedArea.
Режим обновления индекса При первом индексировании все документы считаются новыми. Рассмотрим повторное индексирование с использованием существующего индекса. Имеющиеся в нем документы будем называть старыми, остальные индексируемые документы - новыми. Старые документы можно разделить на три группы - изменившиеся, неизменившиеся и недоступные. Изменившимся считается документ, текущее время модификации которого больше, чем время модификации во время предыдущего индексирования. Недоступными считаются документы, если попытка получить их содержимое по URL, известному от предыдущего индексирования, заканчивается неудачей. Остальные документы считаются неизменившимися. Старые документы можно удалять из индекса, переиндексировать или оставлять в индексе без переиндексирования. Следующая таблица представляет значения аргументов, задающие каждый из этих режимов.
Новый | indnew | skipnew | |
Изменившийся | indmod | skipmod | remmod |
Неизменившийся | indold | skipold | remold |
Недоступный | skipmiss | remmiss |
Для удобства, наиболее часто встречающиеся режимы обновления индекса можно задать с помощью следующих аргументов.
UpdateУбирать из индекса данные о недоступных документах и индексировать заново новые и изменившиеся документы, не индексировать неизменившиеся документы. Эквивалентен заданию indnew, indmod, skipold, remmiss.
ReindexУбирать из индекса недоступные документы и индексировать заново все существующие, независимо от того, изменились ли они со времени предыдущего индексирования. Эквивалентен заданию indnew, indmod, indold, remmiss.
NoremoveИндексировать документы в данной области индексирования, но не убирать из индекса недоступные документы. Этот флаг полезен при индексировании временно недоступных документов. Эквивалентен заданию indnew, indmod, skipold, skipmiss.
AddonlyУбирать из индекса удаленные документы и индексировать заново только новые документы, проиндексированные ранее документы не переиндексировать, даже если время их изменения увеличилось.
Эквивалентен заданию indnew, skipmod, skipold, remmiss.
Noindex Не индексировать документы из данной области индексирования, убирать из индекса все ранее проиндексированные документы из этой области. Эквивалентен заданию skipnew, remmod, remold, remmiss.
SkipНе индексировать документы из данной области индексирования, но сохранить в индексе ранее проиндексированные документы из этой области. Эквивалентен заданию skipnew, skipmod, skipold, skipmiss.
Значение по умолчанию: Update
При получении содержимого документов через HTTP-соединение можно использовать следующие аргументы.
SkipDisconnectedНе удалять из индекса документы, принадлежащие Веб-серверу, с которым не удалось установить HTTP-соединение. Это более слабый вариант noremove, действующий только для недоступных Веб-серверов.
RemoveDisconnectedУдалять из индекса документы, принадлежащие Веб-серверу, с которым не удалось установить HTTP-соединение.
ReconnectВ случае обрыва HTTP-соединения с Веб-сервером пытаться установить его для каждого последующего документа.
ReconnectOnceВ случае обрыва HTTP-соединения с Веб-сервером считать все оставшиеся документы Веб-сервера недоступными.
Значение по умолчанию: RemoveDisconnected, Reconnect
Кодировка символов, используемая в документахrecognizeВсегда распознавать кодировку символов автоматически.
use_content_typeВ случае документов, получаемых по протоколу HTTP, считать кодировкой документа значение, указанное в заголовке Content-Type. Если заголовок отсутствует или в нем не указана кодировка, распознавать кодировку с помощью анализа текста документа.
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 |
Обнаружение границ предложений и абзацев на основе пунктуации
AllowPunctBreaksРазрешить распознавание границ предложений и абзацев по знакам пунктуации - точкам, пробелам, переводам строк и т.п.
IgnorePunctBreaksГраницами предложений и абзацев считать только теги, разбивающие абзац в языке разметки или заданные в конфигурации парсера. Никакие естественные границы (например, точка+пробел+Большая_буква или два перевода строки и абзацный отступ внутри тега <pre> в HTML) не разбивают предложений и абзацев. Однако следует учитывать, что максимальная длина предложения ограничена, поэтому слишком длинные предложения все равно будут разбиты на несколько частей.
Значение по умолчанию: AllowPunctBreaks
Набор атрибутов документаSet имя=значениевключить область индексирования в раздел
Unset имя=значениеисключить область индексирования из раздела
Указанные аргументы позволяют задать поисковые документные атрибуты типа LITERAL, дополнительно к атрибутам, назначаемым парсером документного формата во время индексирования документа. Использование данных аргументов позволяет включить документы в определенные тематические разделы на основании структуры веб-директорий, в которых находятся документы. Альтернативно, во время индексирования документы могут получить поисковые документные атрибуты в соответствии с их содержанием. См. обсуждение в разделе Форматы документов, зоны и атрибуты.
Строка имя=значение не должна включать пробелы. Чтобы удалить для данной области индексирования все унаследованные атрибуты, используйте одиночный аргумент Unset в качестве последнего аргумента директивы.
Пример: Options Set subtree=ourcompany, Unset subtree=news