Руководство пользователя / CNSearch 1.5.1
4.1 Индексатор
4.1.1 search.conf
Все настройки индексатора содержатся в конфигурационном файле search.conf. Данный файл имеет следующую структуру:
[Job name_of_task] [Index] Parameter1 Value1 Parameter2 Value2 Parameter3 Value3 [Index] Parameter1 Value1 Parameter2 Value2 Parameter3 Value3
Для каждого действия заданы параметры и их значения, разделяемые пробелом или табуляцией.
Примечание: В конфигурационном файле возможно использование однострочных комментариев. Каждый комментарий начинается с символа "#".
Для процесса индексации возможно использование следующих параметров:
4.1.1.1 Список параметров
- URL
- Extensions
- Type
- Path
- CharSet
- MaxFiles
- MinWords
- Exclude
- ExcludeVar
- AddOption
- StopWordsFile
- Language
- AFrom
- ATo
- StartWord
- Sleep
- ShowURL
- ShowEmail
- ShowFTP
- Compress
- MetaDescription
- MetaRobots
- UseRobotsTxt
- ConnectCount.
- ProxyServer
- ProxyPort
- ProxyLogin
- ProxyPassword
URL <url>
URL url
Адрес, начинающийся с 'http://...' в HTTP-режиме индексации, либо путь к копии сайта на локальном диске в режиме локальной индексации.
Пример:
Для HTTP:
URL http://www.novgorod.ru/frisbee/
Для диска (Windows):
URL c:/pub/home/frisbee/
Для диска (Unix):
URL /pub/home/frisbee/
Extensions <ext>
Extensions ext1,ext2,ext3
Параметр задает список расширений файлов, включенных в индексацию; может использоваться только в режиме локальной индексации. Расширения файлов разделяются запятой ",".
Пример:
Extensions htm,html,shtml,shtm
Type <typ>
Type typ
Параметр задает тип поискового индекса:
- Обычный;
- Сокращенный - индексный файл меньшего размера, не поддерживающий отображение части текста, содержащей выделенные поисковые слова. (См. Модуль поиска).
По умолчанию - обычный.
Пример:
Type Strict
Path <path>
Path path
Параметр задает путь к каталогу, в котором сохраняются индексные и лог-файлы.
Пример:
Path c:\www\site.com
либо
Path /home/www/site.com
CharSet <cset>
CharSet cset
Параметр устанавливает метод определения кодировки индексируемых файлов. Возможны следующие методы:
- ByMetaTag - идентификация кодировки с помощью тэга META (по умолчанию).
- ByHTTPHeader - идентификация кодировки с помощью HTTP заголовка. В случае если данная идентификация не срабатывает, система предпринимает попытку определить набор символов с помощью тэга МЕТА. Если оба варианта не проходят, система предполагает, что данный документ имеет кодировку windows-1251.
- win-1251 - не определяет кодировку; win-1251 по умолчанию.
- koi8-r - не определяет кодировку; koi8-r по умолчанию.
Пример:
CharSet ByHTTPHeader
MaxFiles <num>
MaxFiles num
Параметр задает максимальное количество индексируемых файлов; по умолчанию 10000. Будьте осторожны: многие сервера содержат огромное количество зацикливающихся ссылок.
Пример:
MaxFiles 50
MinWords <num>
MinWords num
Параметр задает минимальное количество слов в индексируемом документе. Документы с меньшим количеством слов не будут добавлены в поисковый индекс. Этот параметр позволяет повысить качество результатов поиска путем выбрасывания маленьких и неинформативных документов. Значение по умолчанию - 1
Пример:
MinWords 30
Statistic <stat>
Statistic stat
Параметр задает способ сохранения отчетов, которые генерируются в завершающей стадии процесса индексации и сохраняются в stats.log. Возможные опции:
- No - не сохранять отчет;
- Append - добавить к существующему файлу (по умолчанию);
- Overwrite - заменить существующий файл.
Пример:
Statistic Append
Exclude <excl>
Exclude excl1,excl2,excl3
Параметр задает список слов, исключаемых из индексации. Адреса, содержащие, как минимум, одно из исключаемых слов, также не включаются в индексацию. Слова разделяются запятой ",".
Пример:
Exclude editpost.php?,reply.php?,admin/
ExcludeVar <var>
ExcludeVar var1,var2,var3
Параметр задает список переменных, исключаемых из URL сайта. Переменные разделяются запятой ",".
Пример:
ExcludeVar PHPSESSID,order
AddOption <opt>
AddOption opt
Параметр задает метод индексации и используется только в HTTP-режиме. Доступны следующие варианты:
- Page - индексируется только текущая страница;
- SubPages - индексируются все страницы, URL которых содержит адрес стартовой страницы;
- Server - индексируется весь сервер.
Пример:
AddOption SubPages
StopWordsFile <file>
StopWordsFile file
Параметр задает имя файла, содержащего стоп-слова (см. Стоп-слова).
Пример:
StopWordsFile stop.txt
Language <lng>
Параметр задает язык. Если данный параметр указан, поле 'Accept-Language' включается в HTTP- заголовок. Эта переменная может влиять на содержимое документов на некоторых сайтах.
Пример:
Language ru
AFrom <path>
AFrom path
Параметр задает подстроку, которая в URL будет замещена строкой, указанной в параметре ATo.
Пример:
AFrom /home/dir/mysite/ ATo http://search.codenet.ru/
ATo <url>
ATo url
Параметр задает подстроку, заменяющую AFrom в URL; используется вместе с параметром AFrom.
Пример:
AFrom http://127.0.0.1/ ATo http://www.codenet.ru/
или
AFrom c:/documents/www/www.codenet.ru/ ATo http://www.codenet.ru/
StartWord <word>
StartWord word
Параметр определяет слово, с которого начинается процесс индексации страницы сайта. Описание страницы составляется из слов, следующих за стартовым словом. Таким образом, возможно исключение меню и т.п. из описания.
Пример:
StartWord about
Sleep <seconds>
Sleep seconds
Параметр определяет задержку между индексированием страниц сайта. Задается в секундах.
Пример:
Sleep 5
ShowURL <yesno>
ShowURL yesno
Отображать адреса страниц в процессе индексации. По умолчанию - "yes".
Пример:
ShowURL no
ShowEmail <yesno>
ShowEmail yesno
Отображать найденные адреса электронной почты (mailto:) в процессе индексации. По умолчанию - "no".
Пример:
ShowEmail no
ShowFTP <yesno>
ShowFTP yesno
Отображать найденные FTP адреса в процессе индексации. По умолчанию - "no".
Пример:
ShowFTP no
Compress <yesno>
Compress yesno
Просить сервер сжимать содержимое ответа, если сервер поддерживает такую возможность. По умолчанию - "yes". Некорректное сжатие страниц может привести к сбою в работе индексатора.
Пример:
Compress no
MetaDescription <yesno>
MetaDescription yesno
Параметр определяет метод описания страницы. Описание может отображаться в результатах поиска с помощью специального символа %E (см. cnsearch.conf). Возможные значения - "Yes"/"No". По умолчанию - 'No'. Если используется 'Yes', система пытается получить описание из тэга '<META name="description...'. Если тэг невозможно найти, либо задано значение 'No', описание составляется из первых слов документа (см. StartWord).
Пример:
MetaDescription Yes
MetaRobots <yesno>
MetaRobots yesno
В случае если проставлен параметр "No", тэг '<META name="robots"...' игнорируется; в противном случае тэг анализируется на наличие NOINDEX, NOFOLLOW, NONE. Более подробно см. в разделе Поисковые роботы. По умолчанию - "Yes".
Пример:
MetaRobots No
UseRobotsTxt <yesno>
UseRobotsTxt <yesno>
В случае если проставлен параметр "Yes", алгоритм индексации заимствуется из файла 'robots.txt', хранящегося в корневом каталоге веб-сервера. По умолчанию - "No". Более подробно см. в разделе Поисковые роботы. Имя робота - "CNSearch".
Пример:
UseRobotsTxt yes
ConnectCount <num>
ConnectCount <num>
Параметр задает количество запросов удаленного файла. По умолчанию - 5.
Пример:
ConnectCount 10
4.1.1.2 Использование прокси-сервера
Начиная с версии 0.91 в системе поддерживается возможность использования прокси-сервера; добавлены следующие директивы:
ProxyServer <serv>
ProxyServer server
Параметр задает адрес прокси-сервера. Индексатор подключается к прокси-серверу, взаимодействуя с параметром ProxyPort (см. далее).
Пример:
ProxyServer proxy.domain.ru
ProxyPort <port>
ProxyPort port
Параметр определяет порт прокси-сервера.
Пример:
ProxyPort 3128
ProxyLogin <login>
ProxyLogin login
Параметр задает логин для соединения с прокси-сервером; используется только в случае если прокси-сервер запрашивает авторизацию. Взаимодействует с параметром ProxyPassword (см. далее).
Пример:
ProxyLogin alex
ProxyPassword <password>
ProxyPassword password
Параметр задает пароль для соединения с прокси-сервером; используется только в случае если прокси-сервер запрашивает авторизацию.
Пример:
ProxyPassword qwerty
4.1.2 Поддержка поиска с учетом словоформ.
Для учета в процессе поиска морфологии (грамматических форм слова) следует создать файл 'lang.cns' и сохранить его в каталоге, предназначенном для хранения индексных файлов. Данный файл не включен в дистрибутив из-за большого размера - 16 Mb.
В системе разработан специальный инструмент, позволяющий сгенерировать 'lang.cns' из словарей ispell, которые можно найти по адресу: http://fmg-www.cs.ucla.edu/geoff/ispell-dictionaries.html. Словарь ispell состоит из двух файлов - первый представляет собой список слов (lang.dict), второй - набор грамматических правил (lang.aff). В архивах данные файлы могут иметь другие имена; в этом случае необходимо переименовать их в 'lang.dict' и 'lang.aff' соответственно.
Примечание: В случае если Вы уже сгенерировали индекс с учетом различия словоформ, то при последующем процессе поиска следует также принимать во внимание словоформы и использовать тот же словарь.
4.1.3 Стоп-слова
Начиная с версии1.3 в CNSearch Pro реализована возможность пропуска часто используемых служебных слов (артиклей, местоимений, предлогов) в процессе индексации для увеличения скорости поиска и уменьшения объема информации, хранящегося в поисковом файле. Такого рода слова в системе условно именуются "стоп-словами".
Стоп-слова определяются на стадии индексации при помощи файла, в котором они размещены списком, например:
- file: stopwords.txt --------------- a an is the this -------------------------------------
Имя файла, содержащее стоп-слова, указано в search.conf в параметре StopWordsFile:
StopWordsFile stopwords.txt
Посетителей Вашего сайта можно уведомить о том, какие именно слова в их запросе будут проигнорированы в процессе поиска, путем использования специального символа %Р, включающего опцию отображения стоп-слов в результатах поиска:
Словосочетание "Stop Words" можно заменить другим эквивалентом (например, при переводе на другой язык) путем изменения параметра StopWords в конфигурационном файле клиентской части (см. cnsearch.conf).
Назад | Оглавление | Далее