# Остальные команды, используемые в `indexer.conf`

## Команда `Include`

Вы можете включить другой конфигурационный файл в любом месте файла `indexer.conf` при помощи команды `Include <filename>`. Путь считается абсолютным, если <`filename`> начинается с "/":

    Include /usr/local/dpsearch/etc/inc1.conf

В противном случае пусть считается относительным:

    Include inc1.conf

## Команда `DBAddr`

Команда `DBAddr` является описание хранилища данных в URL-подобном стиле. Она определяет параметры (тип, хост, имя базы данных, порт, имя пользователя и пароль и т.д.) для соединения с SQL-сервером или другим хранилищем данных. Может быть задано несколько хранилищ данных. Но все команды `DBAddr` должны быть указаны первыми в файле конфигурации, до любой другой команды. Формат команды:

    DBAddr <DBType>:[//[DBUser[:DBPass]@]DBHost[:DBPort]]/DBName/[?[dbmode=mode]{&<имя параметра>=<значение параметра>}]

об ODBC. Используйте `DBName` для задания имени источника данных (DSN) ODBC. `DBHost` не имеет значения, используйте `localhost`.

о Solid. Используйте `DBHost` для указания сервера Solid. `DBName` не имеет значения для Solid.

Вы можете использовать URL-кодирование для `DBUser` и `DBPass`, если вам необходимо использовать специальные символы в пароле или имени пользователя. Например, если у вас пароль `ABC@DEF`, его необходимо указывать в виде `ABC%40DEF`.

На данный момент поддерживаются следующие значения `DBType`: mysql, pgsql, msql, solid, mssql, oracle, ibase, sqlite. Actually, it does not matter for native libraries support. But ODBC users should specify one of supported values. If your database type is not supported, you may use "unknown" instead.

Пользователи MySQL и PostgreSQL могут указывать путь до Unix-сокета при соединении с `localhost`: `mysql://foo:bar@localhost/dpsearch/?socket=/tmp/mysql.sock`

Если вы используете PostgreSQL и не указываете имя хоста, т.е. `pgsql://user:password@/dbname/` в этом случае PostgreSQL не будет работать по TCP, а будет использовать стандартный Unix-сокет.

`Параметр dbmode`. Вы также можете указать способ хранения слов. Если указан "`single`", все слова сохраняются в одной таблице (файле). Если указан"`multi`", слова будут храниться в разных таблицах (файлах) в зависимости от длины этих слов. Режим "`multi`" обычно быстрее, но требует больше таблиц (файлов). Если выбран режим "`crc`", DataparkSearch будет сохранять вместо слов их 32-битное целые идентификаторы, вычисленные при помощи CRC32 алгоритма. Этот режим требует меньше дискового пространства и быстрее по сравнению с режимами "`single`" и "`multi`", однако он не поддерживает поиск подстрок. Режим "`crc-multi`" использует туже самую структуру, как и режим "`crc`", но еще сохраняет идетификаторы слов в различных таблицах (файлах) в зависимости от длины этих слов, аналогично режиму "`multi`". По умолчанию используется режим "`single`".

`Параметр stored`. Формат:`stored=StoredHost[:StoredPort]`. Этот параметр служит для указания адреса хоста, на котором запущен демон `stored`, хранящий копии документов, относящихся к этому хранилищу.

`Параметр cached`. Формат:`cached=CachedHost[:CachedPort]`. Этот параметр служит для указания адреса хоста, на котором запущен демон `cached`. Используется только для способа хранения `cache` (см.). Каждый раз `indexer` будет при старте соединятся с `cached` по заданному адресу.

`Параметр charset`. Формат:`charset=DBCharacterSet`. Этот параметр может быть использован для задания кодировки соединения с базой данных. Кодровка, задаваемая в этом параметре должна совпадать с кодирокой, заданой командой `LocalCharset`.

`Параметр label`. Format: `label=DBAlabel`. Этот параметр может быть использован для назначения метки команде `DBAddr`. Таким образом, если вы передадите DataparkSearch CGI-переменную `label`, тогда только `DBAddr`, помеченная значением параметра `label` будет использоваться при выполнении поиска. Следовательно, вы можете использовать одного демона `searchd` для ответа на поисковые запросы по нескольким поисковым база, выбираемым по значению параметра `label`.

Если не передано CGI-параметра `label`, в этом случае только DBAddr без пометки `label` будет использоваться для выполнения поискового запроса.

Пример:

    DBAddr          mysql://foo:bar@localhost/search/?dbmode=single

## Команда `VarDir`

Вы можете задать альтернативную директорию для данных способа хранения `cache` и данных `stored`:

    VarDir /usr/local/dpsearch/var

## Команда `NewsExtensions`

Включает расширенную поддержку групп новостей. Значение по умолчанию `no`.

    NewsExtensions yes

## Команда `SyslogFacility`

Может быть использована, если Datapark был скомпилировал с поддержкой `syslog` и вы хотите изменить значение по умолчанию. Задаваемое значение должно быть одним из описаных в файле `syslog.conf`. См. syslog.conf(5).

    SyslogFacility local7

## Команды указания длины слова

Вы можете указать диапазон длин слов, сохраняемых в базе. По умолчанию, сохраняются слова длиной от 1 до 32 символов.

    MinWordLength 1
    MaxWordLength 32

## Команда `MaxDocSize`

Эта команда служит для указания максимального размера документа. Значение по умалчанию: 1048576 (1 Mb). Имеет глобальный эффект.

    MaxDocSize 1048576

## Команда `MinDocSize`

Данная команда включает режим только проверки наличия (CheckOnly) для документов размером менее указанного. Значение по умолчанию: 0. Имеет глобальный эффект.

    MinDocSize 1024

## Команда `IndexDocSizeLimit`

Используйте эту команду для задания максимального размера данных, записываемых в индекс для одного документа. Значение по умолчанию: 0. Это обозначает без ограничений. Команда действует до следующей команды `IndexDocSizeLimit`.

    IndexDocSizeLimit 65536

## Команда `URLSelectCacheSize`

Задаёт число документов отбираемых для индексации за раз. Значение по умолчанию: 1024.

    URLSelectCacheSize 10240

## Команда `URLDumpCacheSize`

Задаёт число документов отбираемых за раз для записи индексов cache mode, загрузки данных в `searchd` или для расчёта индекса популярности. Значение по умолчанию: 100000.

    URLDumpCacheSize 10240

## Команда `UseCRC32URLId`

Включает или выключает генерацию ID для URL используя алгоритм HASH32. Значение по умолчанию: "no".

    UseCRC32URLId yes

## Команда `HTTPHeader`

Вы можете добавить свои собсвенные заголовки в запрос HTTP на получение документов к индексации. Вы не можете вказывать таким образом заголовки "If-Modified-Since" или "Accept-Charset", эти заголовки формируются indexerом самостоятельно. Заголовок "User-Agent: DataparkSearch/version" также формируется самостоятельно, но вы можете заменить его. Command has global effect for all configuration file.

    HTTPHeader "User-Agent: My_Own_Agent"
    HTTPHeader "Accept-Language: ru, en"
    HTTPHeader "From: webmaster@mysite.com"

## Команда `Allow`

    Allow [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ... ]

Данная команда разрешает к индексирования URL, подпадающие под указаный шаблон. Первые три необязательных параметра задают тип сравнения. Значения по умолчанию: Match, NoCase, String. Используйте `NoCase` или `Case` чтобы указать чувтсвительное или нечувствительное к регистру сравнение. Используйте `Regex` чтобы выбрать сравнение на основе регулярного выражения. Используйте `String` чтобы задать сравнение по текстовому шаблону с использование спецсимволов. Возможные спецсимволы: '*' - для обозначения любого числа символов и '?' - для обозначения одного символа. Обратите внимание, что символы '?' и '*' имеют специальное значение при указатии тпа сравнения `String`. Вы можете использовать `Regex` для описания документов, содержащих символы '?' и/или '*' в URL. `String` намного быстрее `Regex`. Используйте `String` где это возможно. Вы можете задавать несколько аргументов для одной команды `Allow`. Вы можете использовать эту команду в любом месте файла конфигурации. Имеет глобальный эффект. Имейте ввиду, что DataparkSearch автоматически добавляет команду `Allow regex .*` после чтения файла конфигурации. Это означает, что разрешено всё, что не зыпрещено явно.

Примеры

    #  Разрешить всё:
    Allow *
    #  Разрешить всё, исключая расширения .php .cgi .pl не учитывая регист и используя регулярные выражения:
    Allow NoMatch Regex \.php$|\.cgi$|\.pl$
    #  Разрешить расширение .HTM учитывая регистр:
    Allow NoCase *.HTM

## Команда `Disallow`

    Disallow [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ... ]

Данная команда запрещает к индексирования URL, подпадающие под указаный шаблон. Значение первых трёх необязательных параметров такое же как и у команды `Allow` Вы можете указывать несколько аргументов для одной команды `Disallow`. Имеет глобальный эффект. Примеры:

    # Disalow URLs that are not in udm.net domains using "string" match:
    Disallow NoMatch *.udm.net/*
    # Disallow any except known extensions and directory index using "regex" match:
    Disallow NoMatch Regex \/$|\.htm$|\.html$|\.shtml$|\.phtml$|\.php$|\.txt$
    # Exclude cgi-bin and non-parsed-headers using "string" match:
    Disallow */cgi-bin/* *.cgi */nph-*
    # Exclude anything with '?' sign in URL. Note that '?' sign has a
    # special meaning in "string" match, so we have to use "regex" match here:
    Disallow Regex  \?

## Команда `CheckOnly`

    CheckOnly [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ... ]

Значение первый трёх необязательных параметров такое же, как и у команды `Allow`. Для URL, подпадающих под эту команду, вместо HTTP метода GET `indexer` будет использовать метод HEAD. Это означает, что будет проверятся только наличие документа, сам же документ скачиваться и индексироваться не будет. Это полезно для zip,exe,arj и других двоичных файлов, например, для организации поиска по имени файла (что-то наподобии ftp-поиска). Вы можете задавать несколько аргументов для одной команды `CheckOnly`. Имеет глобальный эффект. Примеры:

    # Check some known non-text extensions using "string" match:
    CheckOnly *.b	  *.sh   *.md5
    # or check ANY except known text extensions using "regex" match:
    CheckOnly NoMatch Regex \/$|\.html$|\.shtml$|\.phtml$|\.php$|\.txt$

## Команда `HrefOnly`

    HrefOnly [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ... ]

Значение первый трёх необязательных параметров такое же, как и у команды `Allow`.

Используйте эту команду для поиска ссылок в указанных URL. Содержимое самих файлов не индексируется. Команда имеет глобальный эффект.

Например, при индексировании почтовых архивов, индесные страницы (типа mail.10.html, thread.21.html, etc.) будут сканировать для поиска ссылок на страницы с письмами, но не будут индексироваться:

    HrefOnly */mail*.html */thread*.html

## Команда `CheckMp3`

    CheckMp3 [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ...]

Значение первый трёх необязательных параметров такое же, как и у команды `Allow`. Если URL подпадает под эту команду, то `indexer` скачает небольшую порцию этого документа и попробует найти тэги MP3 в этом фрагменте. При обнаружении, тэги будут проиндексированы. В противном случае, документ будет скачен целиком и обработан в обычном порядке. Замечание: это работает только для серверов, поддерживающих HTTP/1.1, т.е. используется заголовок "Range: bytes".

    CheckMp3 *.bin *.mp3

## Команда `CheckMp3Only`

    CheckMP3Only [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ...]

Эта команда аналогична команде `CheckMP3`, за исключением: если тэги MP3 не будут обнаружены, документ не скачивается целиком и не обрабатывается.

    CheckMP3Only *.bin *.mp3

## Команда `IndexIf`

    IndexIf [Match|NoMatch] [NoCase|Case] [String|Regex] <section> <arg> [<arg> ... ]

Эта команда служит для разрешения индексирования при совпадении шаблона `arg` по заданой секции `section` документа. Значение первых трёх необязательных параметров такое же как и у команды `Allow` (см. ).

Пример

    IndexIf regex Title Manual
    IndexIf body "*important detail*"

## Команда `NoIndexIf`

    NoIndexIf [Match|NoMatch] [NoCase|Case] [String|Regex] <section> <arg> [<arg> ... ]

Эта команда служит для запрещения индексирования при совпадении шаблона `arg` по заданой секции `section` документа. Значение первых трёх необязательных параметров такое же как и у команды `Allow` (см. ).

Пример

    NoIndexIf regex Title Sex
    IndexIf body *xxx*

## Команда `HoldBadHrefs`

    HoldBadHrefs <time>

Задаёт сколько времени хранить документы с ошибочными кодами статуса перед удалением их из базы. Например, если какой-либо веб-сервер временно недоступен, `indexer` не удалит страницы этого сервера сразу. Однако, если этот сайт будет недоступен продолжительное время, страницы с этого сайта будут удалены по истечении указаного интервала времени. Формат для параметра <time> см. в описании команды `Period` в .

    HoldBadHrefs 30d

## Команда `DeleteOlder`

    DeleteOlder <time>

Задаёт сколько времени хранить проиндексированные документы в базе. Например, при индексировании новостных сайтов, вы можете задать период, по истечении которого устаревшие страницы новостей будут удалены из базы, независимо от статуса этих документов. Формат для параметра <time> см. в описании команды `Period` в . Значение по умолчанию: 0, - означает "не проверять". Вы можете указать несколько команд `DeleteOlder`, например, по одной для каждой команды `Server`.

    DeleteOlder 7d

## Команда `UseRemoteContentType`

    UseRemoteContentType yes/no

Данная команда указывает брать ли тип содержимого из заголовков ответа сервера (yes) или определять его на основании комманд `AddType`, указанных в файле конфигурации (no). Если задано 'no' и по заданым командам `AddType` определить тип не удаётся, то используется тип из заголовков ответа сервера. Значение по умолчанию: yes.

    UseRemoteContentType yes

## Команда `AddType`

    AddType [String|Regex] [Case|NoCase] <mime type> <arg> [<arg>...]

Эта команда ассоциирует MIME тип с указаным расширением файла. Эти команды используются при индексировании ссылок со схемой file://. Первые два необязательных параметра используются для задания типа сравнения. По умолчанию используются "String" "NoCase" (нечувствительное к регистру стравнение строк с использованием символов-шаблонов '?' и '*').

    AddType image/x-xpixmap	*.xpm

## Команда `Period`

    Period <time>

Задаёт период переиндексирования. <time> указывается в формате 'xxxA[yyyB[zzzC]]' (пробелы допустимы между xxx и A и yyy и т.д) здесь xxx, yyy, zzz - числа (возможно отризательные!) A, B, C могут быть одним из следующего: s - секунда M - минута h - час d - день m - месяц y - год (эти символы такие же как и для функций strptime/strftime).

Примеры:

     15s - 15 секунд
     4h30M - 4 часа и 30 минут
     1y6m-15d - 1 год и шесть месяцев минус 15 дней
     1h-10M+1s - 1 час минус 10 минут плюс 1 секунда

Если указано только число без какого-либо символа, то подразумевается, что время задано в секундах.

Можно задавать несоклько команд `Period`, например по одной на каждую команду `Server`.

    Period 7d

## Команда `PeriodByHops`

    PeriodByHops <hops> [ <time> ]

Задаёт период переиндексирования для страниц зо значением глубины в "мышиных кликах" равным <hops>. Формат для <time> такой же как и для команды `Period`.

Можно задавать несоклько команд `PeriodByHops`, например по одной на каждую команду `Server`. Если параметр <time> опущен, действие указаного ранее значения отменяется.

Если для конретного значения <hops> не задан период переиндексирования командой `PeriodByHops`, в этом случае используется значение, заданное командой `Period`.

## Команда `ExpireAt`

    ExpireAt [ A [ B [ C [ D [ E ]]]]]

Эта команда позволяет задать точное время устаревания документов. Может задаваться для каждой команда Server/Realm в отдельности, действует до конца файла конфигурации или до следующей команды `ExpireAt`. `ExpireAt` указаная без аргументов означает отмену всех ранее указаных значений. A - обозначает минуту, может быть * или 0-59; B - обозначает час, может быть * или 0-23; C - обозначает день месяца, может быть * или 1-31; D - обозначает месяц, может быть * или 1-12; E - обозначает день недели, может быть * или 0-6, 0 - Воскресенье. Команда `ExpireAt` имеет больший приоритет над командами `Period` или `PeriodByHops`.

## Команда `UseDateHeader`

    UseDateHeader yes|no

Использовать ли заголовок ответа сервера Date если в ответе сервера не содержится заголовок Last-Modified. Значение по-умолчанию: no.

## Команда `Tag`

    Tag <string>

Используйте эту команду по своему усмотрению чтобы сгруппировать несколько сайтов, помечая их указаным тэгом. При индексировании или поиске, вы можете ограничиваться сайтами только указаного тэга. Можно указывать несколько команд `Tag`. Команда `Tag` имеет значение до следующей команды `Tag` или до конца файла конфигурации. Значение по умолчанию: пустая строка.

## Команда `TagIf`

    TagIf <tag> [Match|NoMatch] [NoCase|Case] [String|Regex] <section> <arg> [<arg> ... ]

Присвоить документу тэг <tag>, если значении секции `section` подпадает под указаный шаблон `arg`. Значение первых трёх необязательных параметров такое же как для команды `Allow` (см. ).

Пример

    TagIf Docs regex Title Manual

## Команда `Category`

    Category <string>

Вы можете помечать документы при помощи вложеный категорий. Категория - строка шестнадцатиричных цмфр. Вы можете иметь до 6 уровней вложенности по 256 элементов на каждом уровне. Пустая категоря означает корень дерева категорий. См. для дальнейшего описания.

    # This command means a category on first level:
    Category AA
    # This command meand a category on 5th level:
    Category FFAABBCCDD

## Команда `CategoryIf`

    CategoryIf <category> [Match|NoMatch] [NoCase|Case] [String|Regex] <section> <arg> [<arg> ... ]

Присвоить документу категорию <category>, если значение секции `section` подпадает под указаный шаблон `arg`. Значение первых трёх необязательных параметров такое же как для команды `Allow` (см. ).

Пример

    CategoryIf 010F regex Title "JOB ID"

## Команда `MaxHops`

    MaxHops <number>

Максимальная глубина пути в "мышиных кликах" от начального URL. Значение по умолчанию: 256. Может быть задано несколько команд `MaxHops`, например, по одной на каждую команду `Server`. Действует до конца файла конфигурации, либо до следующей команды `MaxHops`.

    MaxHops 256

## Команда `TrackHops`

    TrackHops yes|no

Включает или выключает ведение счётчика hops при переиндексировании. Значение по умолчанию: no (выключено). Если включено, то при переиндексировании значение hops для url вычисляется заново, иначе значение hops вычисляется один раз при помещении url в базу.

    TrackHops yes

## Команда `MaxDepth`

    MaxDepth <number>

Максимальная глубина директории в url. Значение по умолчанию 16. Может быть задано несколько команд `MaxDepth`, например, по одной на каждую команду `Server`. Действует до конца файла конфигурации, либо до следующей команды `MaxDepth`.

    MaxDepth 2

## Команда `MaxDocsPerServer`

    MaxDocsPerServer <number>

Ограничивает число документов, выкачиваемых с одного Server. Значение по умолчанию: -1, что обозначает "без ограничений". Если задано неотрицательное значение, за один запуск `indexer` будет проиндексировано не более указанного числа документов, относящихся к одной команда `Server` или `Realm`. Может быть задано несколько команд `MaxDocsPerServer`, например, по одной на каждую команду `Server`. Действует до конца файла конфигурации, либо до следующей команды `MaxDocsPerServer`.

    MaxDocsPerServer 100

## Команда `MaxHrefsPerServer`

    MaxHrefsPerServer <number>

Ограничивает число ссылок, собираемых с одного Server. Значение по умолчанию: -1, что обозначает "без ограничений". Если задано неотрицательное значение, за один запуск `indexer` будет собирать не более указанного числа ссылок, относящихся к одной команда `Server` или `Realm`. Может быть задано несколько команд `MaxHrefsPerServer`, например, по одной на каждую команду `Server`. Действует до конца файла конфигурации, либо до следующей команды `MaxHrefsPerServer`.

    MaxHrefsPerServer 100

## Команда `MaxNetErrors`

    MaxNetErrors <number>

Задаёт максимальное число сетевых ошибок для каждого сервера. Значение по умолчанию: 16. Используйте значение 0 для выключения проверки. Если число ошибок при обращении к какому-то серверу превысит заданое число (например, хост временно не доступен), `indexer` больше небудет пытаться получить документы с этого сервера. Команда действует до конца файла конфигурации, или до следующей команды `MaxNetErrors`.

    MaxNetErrors 16

## Команда `ReadTimeOut`

    ReadTimeOut <time>

Таймаут ожидания соединения или продолжения получения данных. Формат `<time>` см. . Значение по умолчанию: 30 секунд. Команда действует до конца файла, или до следующей команды `ReadTimeOut`.

    ReadTimeOut 30s

## Команда `DocTimeOut`

    DocTimeOut <time>

Указывает максимальное время ожидания получения всего документа. Формат `<time>` см. в . Значение по умолчанию: 90 секунд. Команда действует до конца файла, или до следующей команды `DocTimeOut`.

    DocTimeOut 1m30s

## Команда `NetErrorDelayTime`

    NetErrorDelayTime <time>

Указывает период, на который будет отложена обработка документа при возникновении сетевых ошибок при его получении. Формат `<time>` см. в . Значение по умолчанию: один день.

    NetErrorDelayTime 1d

## Команда `Cookies`

    Cookies yes/no

Включает поддерку ключиков HTTP (HTTP cookies). Команда действует до конца файла, или до следующей команды `Cookies`. Значение по умолчанию: no.

    Cookies yes

## Команда `Robots`

    Robots yes/no

Разрешает или запрещает использование `robots.txt` и <META NAME="robots" ...> для исключения страниц. Используйте `no`, например, для проверки ссылок на вашем сайте или сайтах. Имейте в виду, что игнорирование чужих `robots.txt` не приветсвуется сетевым этикетом. Команда действует до конца файла, или до следующей команды `Robots`. Значение по умолчанию: yes.

    Robots yes

## Команда `RobotsPeriod`

По умолчанию, данные из robots.txt хранятся в SQL-базе одну неделю. Вы можете изменить этот период используя команду `RobotsPeriod`:

    RobotsPeriod <time>

См. формат <time> в описании команды `Period` из .

    RobotsPeriod 30d

## Команда `CrawlDelay`

Используйте эту команду для задания периода в секундах между последовательными запросами к одному и тому же серверу. Аналогична команде crawl-delay в файле `robots.txt`, но может быть задана в `indexer.conf` файле для каждого сервера в отдельности. Если не задано значение crawl-delay value в `robots.txt`, используется значение, указаное в `CrawlDelay`. Если значение crawl-delay указано в `robots.txt`, тогда используется максимальное значение из `CrawlDelay` и crawl-delay.

## Команда `Section`

    Section <string> <number> <maxlen> [strict] [ <pattern> <replacement> ]

где `<string>` - имя секции и `<number>` - ID секции, от 0 до 255. Используйте 0 если вы не хотите индексировать какую-либо секцию. Лучше всего использовать различные ID для разных секций. В этом случае вы сможете во время поиска задавать различные веса конретным секциям, или же исключать их из результатов поиска. Параметр `<maxlen>` задаёт максимальный размер секции, который будет сохранён в базе (хотя сама секция будет проиндексирована целиком). Используйте 0, если вы не хотите сохранять в базе значение секции. `<pattern>` и `<replacement>` - шаблон и замена, аналогичная используемым в regex, для извления значения секции из тела документа.

Вы можете указать параметр `strict` для задания строгой токенизации секции, что означает разбиение на слова на любом знаке, не являющемся буквой, независимо от контекста. Например, полезно для индексирования URL.

    # Standard HTML sections: body, title
    Section	body			1	256
    Section title			2	128
    # строгая токенизация для URL
    Section url                     3       0 strict
    # шаблон регулярного выражения для секции
    Section GoodName                3       128 "<h1>([^<]*)</h1>" "<b>GoodName:</b> $1"

## Команда `HrefSection`

    HrefSection <string> [ <pattern> <replacement> ]

где `<string>` - имя секции, `<pattern>` и `<replacement>` - шаблон и замена, аналогичная используемым в regex, для извления значения секции из тела документа. Используйте эту команду для извлечения ссылок из тела документа.

    # Standard HTML sections: body, title
    HrefSection	link
    HrefSection     NewLink "<newlink>([^<]*)</newlink>" "$1"

## Команда `FastHrefCheck`

Команда "`FastHrefCheck yes`" полезна для ускорения индексирования, если ваш список команд `Server/Realm/Subnet` огромен, т.к. она выключает проверку ссылок по списку серверов на этапе парсинга страницы.

## Команда `Index`

    Index yes/no

Разрешает или запрещает сохранения проиндексированных слов в базу. Применяется, например, при проверке ссылок на страницах сайта или сайтов. Команда действует до конца файла, или до следующей команды `Index`. Значение по умолчанию: yes. Prevent indexer from storing words into database.

    Index no

## Команда `ProxyAuthBasic`

    ProxyAuthBasic login:passwd

Задаёт http proxy basic authorization. Может быть указана перед каждой командой `Server`, но действует только для этой команды!. Может также использовать перед командой `Proxy`. Примеры:

    ProxyAuthBasic somebody:something

## Команда `Proxy`

    Proxy your.proxy.host[:port]

Вместо прямого соединения, использовать прокси-соединение. Значение номера порта по умолчанию: 3128 (Squid). Команда действует до конца файла, или до следующей команды `Proxy`. Если не указано ни одной команды `Proxy`, или для этой команды не указан хост - используется прямое соединение. Примеры:

    #           Proxy on atoll.anywhere.com, port 3128:
    Proxy atoll.anywhere.com
    #           Proxy on lota.anywhere.com, port 8090:
    Proxy lota.anywhere.com:8090
    #           Disable proxy (direct connect):
    Proxy

## Команда `AuthBasic`

    AuthBasic login:passwd

Включает использование basic http authorization. Может быть указана перед каждой командой `Server`, но действует только для этой команды!. Примеры:

    AuthBasic somebody:something

    # If you have password protected directory(ies), but whole server is open,use:
    AuthBasic login1:passwd1
    Server http://my.server.com/my/secure/directory1/
    AuthBasic login2:passwd2
    Server http://my.server.com/my/secure/directory2/
    Server http://my.server.com/

## Команда `ServerWeight`

    ServerWeight <number>

Задаёт вес Server для расчёта Popularity Rank (см. ). Значение по умолчанию: 1.

    ServerWeight 1

## Команда `OptimizeAtUpdate`

    OptimizeAtUpdate yes

Задаёт стратегию оптимизации индекса слов. Значение по умолчанию: no. Если включено, позволяет экономить дисковое пространство, однако замедляет процесс индексирования. Может указываться и в `indexer.conf` и в `cached.conf`.

## Команда `SkipUnreferred`

    SkipUnreferred yes|no|del

Значение по умолчанию: no. Используйте эту команду для пропуска переиндексации или для удаления документов, на которые никто не ссылается. Для этой команды требуется включить сбор ссылок (см. ).

## Команда `Bind`

    Bind 127.0.0.1

Если ваша система имеет несколько сетевых интерфейсов, вы можете используйте эту команду для задания локального ip адреса.

## Команда `ProvideReferer`

    ProvideReferer yes

Используйте эту команду для передачи заголовка запроса `Referer:` для HTTP и HTTPS соединений.

## Команда `LongestTextItems`

    LongestTextItems 4

Используйте эту команду для указания числа самых длинных текстовых элементов к индексированию.

## Команда `MakePrefixes`

При помощи команды `MakePrefixes yes` вы можете указать `indexer` автоматически создавать префиксы для всех индексируемых слов. В частности, это можно использовать при создании поисковых подсказок.