Яндекс сервер на хостинге Nic.ru

Август 19th, 2008

Задача: поставить поиcковик от Яндекса на сайт www.mysite.ru

Последовательность достижения:

1. Скачать дистрибутив бесплатной версии поисковика отсюда:

http://download.yandex.ru/yandex-server/download/FreeBSD-4/Yandex.Server-FREE-020-3.8.3.tgz

2. Загрузить дистрибутив по FTP или SSH на ферму хостинга, например так:

scp Yandex.Server-FREE-020-3.8.1.tgz <login>@ssh.<login>.nichost.ru:/home/<login>

3. Зайти на ферму:

ssh <login>@ssh.<login>.nichost.ru

4.Создать каталог, в котором будет установлен Яndex.Server

mkdir /home/<login>/yandex

и развернуть в него дситрибутив

cd yandex; tar zxvf ../Yandex.Server-FREE-020-3.8.3.tgz

5. Создать символьные линки на отсутствующие версии библиотек

ln -s /usr/lib/libc_r.so.6 /home/<login>/yandex/lib/libc_r.so.4

ln -s /lib/libz.so /home/<login>/yandex/lib/libz.so.2

6. Исправить файл запуска яндекс /home/<login>/yandex/etc/rc.d/yandex.sh

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/<login>/yandex/lib
export LD_LIBRARY_PATH

# Yandex work directory
WORK_DIR=/home/<login>/yandex

# the path to Yandex binary
YANDEX=/home/<login>/yandex/sbin/yandex

AUTH=username:userpassword
NET_LOC=<IP>:$PORT # IP взять из конфига сайта на ферме (virtual.conf)

7. Скопировать файл /home/<login>/yandex/yandex/yandex.cfg.dist в /home/<login>/yandex/yandex.cfg

8. Скопировать файл /home/<login>/yandex/yandex/stopword.lst.dist в /home/<login>/yandex/stopword.lst

9. Исправить yandex.cfg:

в секции Server

IPAddress <IP> # IP из файла конфигурации сайта на ферме (virtual.conf)

<Authorization>
# имя пользователя
UserName username

# пароль пользователя
UserPassword userpassword
</Authorization>

в секции Collection

IndexDir /home/kyler/yandex/workindex

TempDir /home/kyler/yandex/newindex

<DataSrc id=»webds»>
<Webds>
StartUrls http://www.mysite.ru/

DefaultHttpPrefix http://www.mysite.ru/
</Webds>
</DataSrc>

10. запустить сервер Яndex

/home/<login>/yandex/etc/rc.d/yandex.sh start

11. Открыть в браузере раздел администрирования Яndex.Server:

http://<IP>:17000/admin/

параметры авторизации из файла yandex.cfg

12. Нажать на кнопку <i> под иконкой документа

13. Дождаться окончания индексации

14. Нажать кнопку <S> под иконкой документа

15. Отредактировать и собрать CGI-скрипт для доступа к поисковому движку:

15.1.

cd /home/<login>/yandex/yandex/sources_sample/yandcgi/

15.2. Отредактировать файл yandcgi.cpp

Исправить #define HOST_NAME «localhost» на #define HOST_NAME «<IP>»

15.3. Собрать

make clean && make

16. Установить полученный yandcgi в каталог cgi сайта

17. Проверить доступ к скрипту поиска:

http://www.mysite.ru/cgi-bin/yandcgi

Особенности установки под тариф 201

Для тарифа 201 необходимо включить в Управление модулями proxy_module
После чего для сайта в файле .htaccess прописать:
RewriteEngine On
RewriteRule ^yandex(.*) http://IP:17000$1 [P]

Тогда доступ будет по http://mysite.ru/yandex/admin/

2 комментария to “Яндекс сервер на хостинге Nic.ru”

  1. alp Says:

    Приветствую.
    Никак не могу найти нормального описания индексации сторонних сайтов этим движком.
    В данный момент имеется вот такая конструкция:

    Name webds
    Module libwebds.so
    Symbol WEBDS_DATASRC_LIB

    StartUrls : http://besser.zet/
    DefaultHttpPrefix : http://besser.zet

    HttpPrefix : http://besser.zet/

    text/html : .html, .htm, .shtml, .php

    Но индексация не производится. По логам так же не понять причин =(

    Буду очень благодарен, если подскажете как тут быть. Думаю не только мне будет полезно поскольку много где встречал подобные вопросы, а ответа нигде нет.

  2. alp Says:

    блин, обрезались тэги…

    {DataSrc}
    Name webds
    Module libwebds.so
    Symbol WEBDS_DATASRC_LIB
    {Webds}
    StartUrls : http://besser.zet/
    DefaultHttpPrefix : http://besser.zet
    {IndexedArea}
    HttpPrefix : http://besser.zet/
    {/IndexedArea}
    {Extensions}
    text/html : .html, .htm, .shtml, .php
    {/Extensions}
    {/Webds}
    {/DataSrc}

    Заменил символы «» на {}

Оставить комментарий

Вам надо войти чтобы оставить комментарий.