DataparkSearch Engine 4.49: Поисковая машина; Справочное руководство | ||
---|---|---|
Пред. | Глава 3. Индексирование | След. |
DataparkSearch имеет возможность хранения сжатых копий проиндексированных документов. Копии сжимаются и хранятся при помощи нового демона - stored, который устанавливается в поддиректорию sbin корневой директории установки DataparkSearch (по умолчанию: /usr/local/dpsearch/sbin).
stored может быть использован для создания цитат документов на основе слов из запроса. Для задания приблизительного размера цитаты в байтах, используйте в search.htm (в секции variables) команду ExcerptSize. Значение, используемое по умолчанию, равно 256. Вы можете выключить создание цитат (но сохранив возможность показа сохраненных копий) документов указав команду DoExcerpt no в вашем поисковом шаблоне.
В DataparkSearch можно хранить сжатые копии документов без использования демона stored. Для этого вместо настройки параметров stored в файле конфигурации indexer.conf необходимо указать команду DoStore yes.
Сохраненные копии документов отображаются отдельной CGI-программой storedoc.cgi. Эта программа получает сохранённую копию от stored и отображает содержимое этого документа в окне броузера предварительно выделив слова из поискового запроса.
Для использования возможностей stored, скомпилируйте DataparkSearch с поддержкой zlib:
./configure --with-zlib <other arguments>
Вы можете использовать команды Store и NoStore для разрешения или запрещения сохранения некоторых фалов по шаблону. Аргументы у этих команд точно такиеже, как и у команды Allow (см. Разд. 3.10.14). Все документы сохраняются по умолчанию, если включена поддержка stored.
Перед использованием stored, пожалуйста, проделпйте следующее:
Скопируйте /usr/local/dpsearch/etc/stored.conf-dist в /usr/local/dpsearch/etc/stored.conf.
Отредактируйте /usr/local/dpsearch/etc/stored.conf
Следующие команды используются для конфигурирования stored:
Listen говорит stored к какому адресу и/или порту привязаться. По умолчанию, stored привязывается к порту 7004 и каждому адресу. Возможно указывать только порт:
Listen 7004
Или только адрес:
Listen 127.0.0.2
Или оба, алрес и порт:
Listen 127.0.0.2:7004
VarDir задаёт альтернативную рабочую директорию var/, например:
VarDir /mnt/d/dpsearch/var/
StoredFiles указывает число файлов-хранилищ, создаваемых в директории var/stored/, например:
StoredFiles 256
OptimizeInterval задаёт интервал в секундах между попытками оптимизировать очередной файл-хранилище, например:
OptimizeInterval 300
OptimizeRatio задаёт уровень дефрагментации в процентах, по достижении которого файл-хранилище оптимизируется, например:.
OptimizeRatio 3
Запустите stored:
/usr/local/dpsearch/sbin/stored &
Отредактиируйте indexer.conf и search.htm (или searchd.conf, если используется searchd). Укажите адрес и порт, кроторые indexer будет использовать для связи с stored. Используйте параметр stored команды DBAddr, например:
DBAddr mysql://localhost/search/?dbmode=cache&stored=localhost:7004
После того, как вы сконфигурируете и запустите stored, indexer будет передавать ему проиндексированные документы. А stored будет сжимать полученные документы и сохранять их на диске.
Для включения отображения сохраненных документов при поиске, проделайте следующее:
Отредактируйте storedoc.htm (шаблон для storedoc.cgi), если необходимо.
Добавьте в секцию <!--res--> шаблона search.htm ссылку на storedoc.cgi, например: <A HREF="$(stored_href)">Cached copy</A>
Укажите URL CGI-программы storedoc.cgi в search.htm (по умолчанию $(stored_href) будет возвращать /cgi-bin/storedoc.cgi). Если вам необходимо указать другой URL, добавьте в раздел переменных шаблона search.htm следующую строку:
StoredocURL /path/to/storedoc.cgi
Или для абсолютной ссылки:
StoredocURL http://servername/path/to/storedoc.cgi
Если все сконфигурировано правильно, при поиске stored работает следующим образом:
search.htm показывает ссылку на storedoc.cgi;
Когда пользователь кликает по ссылке, storedoc.cgi посылает запрос к демону stored по адресу, указанному в storedoc.htm при помощи параметра stored команды DBAddr;
По этому запросу, stored находит и разжимает запрошенную копию и отправляет ее storedoc.cgi;
storedoc.cgi разбирает полученный документ и выделяет все слова из поискового запроса. Способ выделения указывается в шаблоне storedoc.htm командами HlBeg and HlEnd;
Пред. | Начало | След. |
Использование syslog | Уровень выше | HTML-парсер в DataparkSearch |