Здравствуй, уважаемый друг!

Кажется, ты используешь AdBlock. Этот проект развивается и существует за счет доходов от рекламы.
Добавь, пожалуйста, нас в исключения.

Спасибо за понимание.

Создание сайтов Харьков

Руссифицируем Sphider 1.3.6 или Sphider vs UTF-8

1 января 2014 в 0:00 Автор: Nikita_Sp в категории Прочее, Статьи о php 3 комментария

Доброго времени суток, уважаемые читатели моего блога!

Столкнулся с Sphider’ом в учебных целях, и обнаружил, что мой сайт (http://nikita-sp.com.ua) не индексируется этим роботом! Выдает ошибки в SQL запросах и все тут!

Я начал перерывать форумы, листать Google… но все тщетно. В конечном итоге я решил сам бороться с проблемой кодировок и все принудительно конвертировать в кодировку, с которой работает скрипт — windows-1251!

Итак, я решил задачу следующим образом:

1) Открываем файл /admin/spiderfuncs.php
2) Ищем начало функции clean_file() (~575 строка) и после строки с объявлением глобальных переменных:

global $entities, $index_host, $index_meta_keywords;

вставляем следующую строку:

$file = iconv("utf-8", "windows-1251", $file);

3) Открываем файл /settings/database.php и сразу же после соединения с БД (~10 строка):

$success = mysql_pconnect ($mysql_host, $mysql_user, $mysql_password);

вставляем:

mysql_query("SET NAMES 'cp1251'");
mysql_query("SET CHARACTER SET 'cp1251'");

Таким образом мы заставим робота понимать русские символы и работать корректно. Теперь переустановите робота (перезалейте базу данных) для того чтобы очистить БД от мусора, который вы могли туда накидать во время индексирования сайтов в другой кодировке и пользуйтесь на здоровье!

Если все равно что-то не верно отображается — попробуйте изменить в файле header.html (/templates/standart/) в строке:

<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">

кодировку на:

<meta http-equiv="content-type" content="text/html; charset=windows-1251">

На этом все!
Удачного поиска, господа! 🙂

3 комментария

  • Добрый день, отличная инструкция! Всё заработало)
    Не могли бы вы подсказать, как Sphider работать через прокси?
    Конкретнее — чтоб он сайты в сети i2p индексировал?

    • Рад что помог, ставьте +1 в сетях — это поможет мне)
      Вы знаете, не сталкивался с этим вопросом и, к сожалению, подсказать не смогу. Попробуйте почитать на оф. сайте, возможно, там вы найдете необходимую информацию.

  • Рекомендую использовать sphider-plus 2.9 сразу, там этот баг уже исправлен. Ну, и она намного функциональнее.

Добавить комментарий для вадим Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вверх!

Меню блога

Категории блога

Облако тегов