(fwd) [apache-rus] Re: [apache-talk] поиск по WWW

Andrey Gerzhov (kittle@freeland.alex-ua.com)
Tue, 13 Oct 1998 10:33:27 +0300 (EEST)

-- forwarded message --
Path: freeland.alex-ua.com!barmaglot.alex-ua.com!news.alexradio.kiev.ua!not-for-mail
Message-ID: <3621D782.E9663736@apmsun.mpei.ac.ru>
Date: Mon, 12 Oct 1998 13:18:42 +0300
From: Konstantin Tokar <tokar@apmsun.mpei.ac.ru>
To: apache-rus@lists.lexa.ru
Subject: [apache-rus] Re: [apache-talk] поиск по WWW
Newsgroups: alex.gated.apache.rus
Lines: 226
Xref: freeland.alex-ua.com alex.gated.apache.rus:343

This is a multi-part message in MIME format.
--------------6289E2B1FBA38608FD78FB0C
Content-Type: text/plain; charset=koi8-r
Content-Transfer-Encoding: 8bit

Alex Tutubalin wrote:
>
> Привет еще раз
>
> Сразу для начала дискуссии :). Есть такая искалка - ht/dig.
> Я знаю, что для ее нормальной работы нужно какое-то количество патчей
> (выдача русских букв в ссылках в plaintext и подобное). Может ли
> кто-то поделиться патчами для версии htdig-3.1.0b1.tar.gz
> или указать какая версия правильная и так далее ?

htdig-3.1.0b2.tar.gz - работает по адресу
http://www.mpei.ac.ru/htdig/search.shtml

Там надо скорректировать русские слова в поисковых
выражениях, чтобы они не перекодировались дважды -
я просто пропустил выдачу htdig через фильтр и
никаких патчей (фильтр прилагается) - вызов
htsearch заменяется на search.cgi:

#!/bin/sh
ulimit -t 1 -c 0

/usr/local/httpd/koi/cgi-bin/htsearch |
/usr/local/httpd/koi/cgi-bin/htdig-conv

Патчей для него надо много, так как ошибок - туча,
но если не лазить куда не надо, то все работает,
за исключением того, что не работает. В списке
рассылки по htdig постоянно всплывают новые баги,
так что я решил вообще ничего не менять, только
пара мест (см. внизу). В новой версии, судя по
списку, появились новые глюки, так что я ее не
стал даже ставить. Еще одно исправление -
анализатор кодировки входного файла, но это я
сделал довольно некрасиво, если надо то пришлю.
Но, похоже, надо все документы считать документами
в cp-1251 (или другой), чтобы исключить
дублирование, так что особой нужды в таком
распознавателе нет. Общая ошибка htdig - параметры
из строки запроса воспринимаются не всегда так же,
как из конф. файла, была даже мысль генерировать
отдельный htdig.conf для каждого запроса.

//*****************************************************************************
// Server::Server(char *host, int port)
//
Server::Server(char *host, int port)
{
if (debug > 0)
cout << endl << "New server: " << host << ", " <<
port << endl;

_host = host;
_port = port;
_bad_server = 0;
_documents = 0;

/*KT*/
_disallow.IgnoreCase();
/*/KT*/


//
// Attempt to get a robots.txt file from the
specified server
//
...

//*****************************************************************************
// void Server::robotstxt(Document &doc)
// This will parse the robots.txt file which is
contained in the document.
//
void Server::robotstxt(Document &doc)
{
......
name = good_strtok(line, ":");
if (!name)
continue;
/*KT*/
while (name && isspace(*name))
name++;
/*/KT*/
rest = good_strtok("\r");
if (!rest)
rest = "";
........

-- 
Konstantin Tokar, http://www.mpei.ac.ru/tokar/
--------------6289E2B1FBA38608FD78FB0C
Content-Type: application/x-gzip; name="cgi-output-convert.tar.gz"
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="cgi-output-convert.tar.gz"

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 sNr7P0NkDzbYYIM9efsJkxMH0gC0AAA= --------------6289E2B1FBA38608FD78FB0C--

-- end of forwarded message --

-- 
С тем, что не помешает никогда,
                                               Kittle