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

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

В формате PDF

Общие сведения

Возможности поискового модуля

Поиск

  • Не содержит лицензионных ограничений на число поисков на сервере в целом и на число поисков в единицу времени, а также на число клиентских машин, взаимодействующих с одним сервером.
  • Позволяет искать в нескольких независимых коллекциях документов.
  • Предоставляет возможность распределенного поиска, с объединением результатов, полученных из разных поисковых источников.

Язык запросов

  • Поддерживает все возможности языка запросов, ранжирования результатов поиска и подсветки найденных слов.
  • Предоставляет возможность настроить "расширенный поиск" по тематическим разделам и сгруппировать найденные документы по определенным признакам.

Результаты поиска

  • Позволяет получать результаты поиска в XML формате.
  • Позволяет изменять дизайн страниц результатов поиска посредством Perl, C++ или XSLT.
  • По умолчанию представляет результаты поиска во встроенном дизайне, созданном Студией Артемия Лебедева.

Индексация

  • Не содержит лицензионных ограничений на число индексируемых документов, их размер или суммарный размер индекса.
  • Позволяет индексировать документы через HTTP-соединение, из файловой системы и в базах данных.
  • Поддерживает форматы XML, RTF, PDF, MP3, FLASH, MS Word, MS Excel, MS PowerPoint и другие.
  • Позволяет индексировать группы документов с независимой настройкой параметров индексирования.
  • Позволяет сделать тонкую настройку индексируемых зон и атрибутов в HTML-документе.
  • Позволяет получать индексируемые документы из произвольных источников данных, реализующих API источника данных.

Быстрое знакомство

Установка и первый запуск

  • Установите программу или пакет. Запустите поисковый модуль.

    Windows

    Установите программу в произвольную папку, которая в дальнейшем будет называться <yandex>.

    Для настройки программы отредактируйте файл yandex.cfg, расположенный в каталоге <yandex>, как описано в следующем разделе.

    Установите и запустите системный сервис либо вручную:

    cd <yandex>
    yandex-server.exe -i
    net start Yandex.Server

    либо с помощью batch-файла:

    cd <yandex>
    start.bat

    Linux

    Установите пакет при помощи команды:

    rpm -i имя_rpm-пакета

    или

    dpkg -i имя_deb-пакета

    Если в вашем дистрибутиве такой команды нет, распакуйте в корневой каталог tgz-архив, используя команду tar:

    tar -zxvf имя_tgz-архива -C /

    Для настройки программы отредактируйте файл yandex.cfg, расположенный в каталоге <yandex>, как описано в следующем разделе.

    Выполните команду

    /etc/init.d/yandex-server.sh start

    которая запустит поисковый модуль в режиме демона.

    FreeBSD

    Установите пакет при помощи команды pkg_add:

    pkg_add имя_пакета

    либо распакуйте tgz-архив при помощи команды tar:

    tar -zxvf имя_tgz-архива -C /

    Для настройки программы отредактируйте файл yandex.cfg, расположенный в каталоге <yandex>, как описано в следующем разделе.

    Выполните команду

    /usr/local/etc/rc.d/yandex-server.sh start

    которая запустит поисковый модуль в режиме демона.

    Важно
    Для установки и обновления пакетов необходимо иметь права пользователя root.
  • Откройте в браузере веб-страницу http://localhost:17000/admin и нажмите на кнопку Запустить, расположенную рядом с заголовком Индексатор: остановлен. Дождитесь окончания процесса индексирования. После окончания индексирования в подчиненном каталоге <workindex> рабочего каталога должны быть созданы шесть файлов, имеющих ненулевую длину - indexcfg, indexinv, indexkey, indexdir, indexarc, indexdat.
  • На веб-странице http://localhost:17000/admin нажмите на кнопку Запустить, расположенную рядом с заголовком Поиск: остановлен. Теперь страница http://localhost:17000/ содержит форму для поиска.

Настройка конфигурационного файла

Для настройки поискового модуля найдите или создайте в рабочем каталоге файл yandex.cfg и отредактируйте его в любом текстовом редакторе. yandex.cfg представляет собой текстовый файл, в котором перечислены директивы, задающие параметры поискового модуля.

В простейшем случае yandex.cfg имеет следующий вид:

<Server>
</Server>
  <Collection>
    <DataSrc id="webds">
        Config : -w www.firma.ru/index.html
    </DataSrc>
  </Collection>

В качестве значения опции -w параметра директивы Config укажите адрес веб-страницы, которая будет проиндексирована первой. Адреса последующих страниц будут получены индексатором в результате анализа гипертекстовых ссылок. В итоге будут проиндексированы все страницы в домене www.firma.ru, на которые можно перейти по ссылкам с первой страницы.

Пример поисковой формы

Ниже приведен пример простой HTML-формы, которую вы можете разместить на страницах вашего веб-сервера для ввода данных для поиска:

<!-- форма поиска -->
<form name="search" method="get" action="http://www.firma.ru:17000/">
<b>Поиск:</b><br>
<input size="15" name="text" value="" maxlength="200">
<input type="submit" value=" Найти ">
</form>

Задайте вместо www.firma.ru имя машины, на которой у вас установлен поисковый модуль. Также задайте свой номер порта, на котором работает поисковый модуль, если он отличается от принятого по умолчанию значения 17000.

Запуск и особенности настройки

Запуск поискового модуля

Windows-версия. Поисковый модуль реализован в виде исполняемого файла yandex-server.exe и является сервисом операционной системы. Для Windows 2000/XP/2003 запуск и остановка сервиса может быть осуществлены посредством приложения Service панели управления или с помощью команды NET. В параметрах сервиса может быть указан автоматический запуск. Во всех случаях сервис должен быть предварительно установлен с помощью запуска программы с ключом -i. При запуске yandex-server.exe без ключей под Windows 2000/XP/2003 программа работает как обычное консольное приложение.

Unix-версия. Поисковый модуль реализован в программном модуле /usr/local/sbin/yandex-server. Для автоматического запуска этого модуля при старте операционной системы проще всего воспользоваться готовым управляющим скриптом yandex-server.sh, входящим в комплект поставки. Этот скрипт должен находиться в каталоге, содержащем скрипты запуска приложений при загрузке вашего компьютера:

  • в Linux - обычно это каталог /etc/rc.d/init.d. Кроме того, на файл yandex-server.sh должны вести символические ссылки из каталогов /etc/rc.d/rc0.d, /etc/rc.d/rc2.d и /etc/rc.d/rc3.d для корректного запуска и остановки поискового модуля на разных уровнях выполнения операционной системы.
  • в FreeBSD-6 или выше - это каталог /usr/local/etc/rc.d

Для остановки поискового модуля запустите скрипт yandex-server.sh с опцией stop.

Для перезапуска поискового модуля запустите скрипт yandex-server.sh с опцией restart.

Ключи командной строки

Ключи командной строки, сопровождаемые устанавливаемым значением, дублируют директивы секции Server конфигурационного файла, но имеют более высокий приоритет. Более детальные описания этих параметров даны в разделе Директивы секции Server.

Ключ Описание
-a значение

IP-адрес, на котором работает поисковый модуль.

В отсутствие ключа IP-адрес может быть установлен в директиве IPAddress конфигурационного файла.

-p значение

Порт, на котором работает поисковый модуль.

В отсутствие ключа порт может быть установлен в директиве Port конфигурационного файла.

-h значение

Хост, на котором работает поисковый модуль.

В отсутствие ключа хост может быть установлен в директиве Host конфигурационного файла.

-t значение

Максимальное количество одновременно выполняемых поисковых запросов.

В отсутствие ключа данное значение может быть установлено в директиве Threads конфигурационного файла.

-q значение

Максимальный размер очереди поисковых запросов, ожидающих начала выполнения.

В отсутствие ключа данное значение может быть установлено в директиве QueueSize конфигурационного файла.

-d Запускает сервис как обычное консольное приложение.
-v Печатает номер версии, после чего завершается.
-i

Устанавливает yandex-server.exe как сервисное приложение операционной системы Windows, после чего завершается.

Только для Windows-версии.

-r

Отменяет установку yandex-server.exe как сервисного приложения операционной системы Windows, после чего завершается.

Только для Windows-версии.

Последним параметром командной строки служит путь к файлу конфигурации. Если путь к файлу конфигурации не указан, то используется имя yandex.cfg. Для операционных систем Windows поиск файла осуществляется в том же каталоге, в котором находится yandex-server.exe, для Unix-систем файл ищется в каталоге, из которого запущена программа.

Особенности Unix-версии

Если используется управляющий скрипт yandex-server.sh, необходимо правильно выставить переменные окружения:

  • AUTH

    Должна соответствовать директивам UserName, UserPassword и иметь вид UserName:UserPassword.

  • NET_LOC

    Имя или IP-адрес хоста должны соответствовать директиве Host либо IPAddress соответственно (по умолчанию localhost).

  • PORT

    Должна соответствовать директиве Port конфигурационного файла (по умолчанию 17000).

Пример

Ниже приведен пример вызова скрипта yandex-server.sh для секции конфигурационного файла, в которой заданы настройки веб-сервера.

AUTH=useradmin:asdf12345 PORT=80 NET_LOC='yandex-search.mysite.ru' yandex-server.sh start

Запуск/остановка индексатора и поискового сервера

Для каждой коллекции документов соответствующие индексатор и поисковый сервер могут быть запущены или остановлены независимо друг от друга.

Перед первым стартом поискового сервера необходимо запустить индексатор и дождаться, пока он завершит построение индексных файлов. Повторный запуск индексатора требуется для обновления индексных файлов, если коллекция документов изменилась за счет добавления, изменения или удаления документов.

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

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

По умолчанию после старта поискового модуля индексатор остановлен, а поисковый сервер, при наличии индексных файлов, автоматически стартует. Чтобы поисковый сервер не стартовал в момент запуска поискового модуля, секция Collection должна иметь атрибут autostart со значением no.

Если при старте поискового модуля поисковый сервер для какой-либо коллекции документов не стартовал (например, по причине отсутствия индексных файлов), веб-сервер продолжает работать. На поисковые запросы по этой коллекции сервер отвечает, не смотря на то, что поиск остановлен. Однако, если атрибут autostart секции Collection имеет значение must, поисковый модуль автоматически завершит работу. Эта настройка может оказаться важной для инструментов автоматического мониторинга работоспособности поиска.

CGI-параметры административной страницы

Для запуска и остановки индексатора или поискового сервера служит специальная административная страница поискового модуля, имеющая адрес http://.../admin. С помощью расположенных на этой странице кнопок можно выполнить требуемые действия. Использование указанных кнопок эквивалентно следующим HTTP-запросам к поисковому модулю (если задано более одного HTTP-запроса, можно использовать любой из них):

Действие HTTP-запрос
Начать индексирование
/admin?id=value&action=bi
/admin?id=value&action=startindexer
Остановить индексирование
/admin?id=value&action=ei
/admin?id=value&action=stopindexer
Начать поиск
/admin?id=value&action=bs
/admin?id=value&action=startsearch
Остановить поиск
/admin?id=value&action=es
/admin?id=value&action=stopsearch
Перезапустить поиск
/admin?id=value&action=restartsearch
Очистить кеш поисковых запросов
/admin?id=value&action=clearcache
Остановить поисковый модуль
/admin?action=shutdown

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

В ответ на указанные запросы поисковый модуль возвращает административную страницу с новым состоянием кнопок, полученным после выполнения запрошенной команды. Если запросы выполняются из внешнего планировщика задач, удобно запретить формирование ответной HTML-страницы. Для этого нужно к запросу добавить параметр brief со значением yes.

Чтобы узнать статус индексатора и поискового сервера, задайте один из следующих HTTP-запросов:

Действие HTTP-запрос
Запретить формирование ответной HTML-страницы
/admin?brief=yes&action=_действие_из_предыдущей_таблицы
Запросить статус всех коллекций поискового модуля
/admin?action=statusall
Запросить статус определенной коллекции поискового модуля
/admin?id=value&action=status

Использование статических картинок

Если дизайн страниц с результатами поиска требует использования картинок, эти картинки можно разместить на каком-либо внешнем HTTP-сервере и указать их веб-адреса в скрипте, создающем страницу результатов (см. раздел Формирование страниц с результатами поиска). Тем не менее, чтобы сделать поисковый модуль самодостаточным, предусмотрена возможность выдачи статических картинок, пути веб-адресов которых начинаются с /images/ . С этими адресами будут выдаваться все картинки с расширениями gif, jpg и png, расположенные либо в подчиненном каталоге ./images каталога, в котором находится выполняемый модуль yandex-server.exe для Windows, либо в каталоге, из которого запущена программа, для Unix.