|
Клиники лечения алкоголизма в москве, но надёжно. Лечение алкоголизма и компьютер. |
3.10. Остальные команды, используемые в indexer.conf3.10.1. Команда IncludeВы можете включить другой конфигурационный файл в любом месте файла indexer.conf при помощи команды Include <filename>. Путь считается абсолютным, если <filename> начинается с "/": Include /usr/local/dpsearch/etc/inc1.conf В противном случае пусть считается относительным: Include inc1.conf 3.10.2. Команда DBAddrКоманда DBAddr является описание хранилища данных в URL-подобном стиле. Она определяет параметры (тип, хост, имя базы данных, порт, имя пользователя и пароль и т.д.) для соединения с SQL-сервером или другим хранилищем данных. Может быть задано несколько хранилищ данных. Но все команды DBAddr должны быть указаны первыми в файле конфигурации, до любой другой команды. Формат команды: DBAddr <DBType>:[//[DBUser[:DBPass]@]DBHost[:DBPort]]/DBName/[?[dbmode=mode]{&<имя параметра>=<значение параметра>}]
Вы можете использовать URL-кодирование для На данный момент поддерживаются следующие значения Пользователи MySQL и PostgreSQL могут указывать путь до Unix-сокета при соединении с localhost: mysql://foo:bar@localhost/dpsearch/?socket=/tmp/mysql.sock Если вы используете PostgreSQL и не указываете имя хоста, т.е. pgsql://user:password@/dbname/ в этом случае PostgreSQL не будет работать по TCP, а будет использовать стандартный Unix-сокет. Параметр dbmode.
Вы также можете указать способ хранения слов.
Если указан " Параметр stored. Формат:stored=StoredHost[:StoredPort]. Этот параметр служит для указания адреса хоста, на котором запущен демон stored, хранящий копии документов, относящихся к этому хранилищу. Параметр cached. Формат:cached=CachedHost[:CachedPort]. Этот параметр служит для указания адреса хоста, на котором запущен демон cached. Используется только для способа хранения cache (см.Разд. 5.2>). Каждый раз indexer будет при старте соединятся с cached по заданному адресу. Параметр charset. Формат:charset=DBCharacterSet. Этот параметр может быть использован для задания кодировки соединения с базой данных. Кодровка, задаваемая в этом параметре должна совпадать с кодирокой, заданой командой LocalCharset. Параметр label. Format: label=DBAlabel.
Этот параметр может быть использован для назначения метки команде DBAddr. Таким образом, если вы передадите
DataparkSearch CGI-переменную
Пример: DBAddr mysql://foo:bar@localhost/search/?dbmode=single 3.10.3. Команда VarDirВы можете задать альтернативную директорию для данных способа хранения cache и данных stored: VarDir /usr/local/dpsearch/var 3.10.4. Команда NewsExtensionsВключает расширенную поддержку групп новостей. Значение по умолчанию no. NewsExtensions yes 3.10.5. Команда SyslogFacilityМожет быть использована, если Datapark был скомпилировал с поддержкой syslog и вы хотите изменить значение по умолчанию. Задаваемое значение должно быть одним из описаных в файле syslog.conf. См. syslog.conf(5). SyslogFacility local7 3.10.6. Команды указания длины словаВы можете указать диапазон длин слов, сохраняемых в базе. По умолчанию, сохраняются слова длиной от 1 до 32 символов. MinWordLength 1 MaxWordLength 32 3.10.7. Команда MaxDocSizeЭта команда служит для указания максимального размера документа. Значение по умалчанию: 1048576 (1 Mb). Имеет глобальный эффект. MaxDocSize 1048576 3.10.8. Команда MinDocSizeДанная команда включает режим только проверки наличия (CheckOnly) для документов размером менее указанного. Значение по умолчанию: 0. Имеет глобальный эффект. MinDocSize 1024 3.10.9. Команда IndexDocSizeLimitИспользуйте эту команду для задания максимального размера данных, записываемых в индекс для одного документа. Значение по умолчанию: 0. Это обозначает без ограничений. Команда действует до следующей команды IndexDocSizeLimit. IndexDocSizeLimit 65536 3.10.10. Команда URLSelectCacheSizeЗадаёт число документов отбираемых для индексации за раз. Значение по умолчанию: 1024. URLSelectCacheSize 10240 3.10.11. Команда URLDumpCacheSizeЗадаёт число документов отбираемых за раз для записи индексов cache mode, загрузки данных в searchd или для расчёта индекса популярности. Значение по умолчанию: 100000. URLDumpCacheSize 10240 3.10.12. Команда UseCRC32URLIdВключает или выключает генерацию ID для URL используя алгоритм HASH32. Значение по умолчанию: "no". UseCRC32URLId yes 3.10.13. Команда HTTPHeaderВы можете добавить свои собсвенные заголовки в запрос HTTP на получение документов к индексации. Вы не можете вказывать таким образом заголовки "If-Modified-Since" или "Accept-Charset", эти заголовки формируются indexerом самостоятельно. Заголовок "User-Agent: DataparkSearch/version" также формируется самостоятельно, но вы можете заменить его. Command has global effect for all configuration file. HTTPHeader "User-Agent: My_Own_Agent" HTTPHeader "Accept-Language: ru, en" HTTPHeader "From: webmaster@mysite.com" 3.10.14. Команда AllowAllow [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ... ] Данная команда разрешает к индексирования URL, подпадающие под указаный шаблон.
Первые три необязательных параметра задают тип сравнения.
Значения по умолчанию: Match, NoCase, String.
Используйте Примеры # Разрешить всё: Allow * # Разрешить всё, исключая расширения .php .cgi .pl не учитывая регист и используя регулярные выражения: Allow NoMatch Regex \.php$|\.cgi$|\.pl$ # Разрешить расширение .HTM учитывая регистр: Allow NoCase *.HTM 3.10.15. Команда DisallowDisallow [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ... ] Данная команда запрещает к индексирования URL, подпадающие под указаный шаблон. Значение первых трёх необязательных параметров такое же как и у команды Allow Вы можете указывать несколько аргументов для одной команды Disallow. Имеет глобальный эффект. Примеры: # Disalow URLs that are not in udm.net domains using "string" match: Disallow NoMatch *.udm.net/* # Disallow any except known extensions and directory index using "regex" match: Disallow NoMatch Regex \/$|\.htm$|\.html$|\.shtml$|\.phtml$|\.php$|\.txt$ # Exclude cgi-bin and non-parsed-headers using "string" match: Disallow */cgi-bin/* *.cgi */nph-* # Exclude anything with '?' sign in URL. Note that '?' sign has a # special meaning in "string" match, so we have to use "regex" match here: Disallow Regex \? 3.10.16. Команда CheckOnlyCheckOnly [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ... ] Значение первый трёх необязательных параметров такое же, как и у команды Allow. Для URL, подпадающих под эту команду, вместо HTTP метода GET indexer будет использовать метод HEAD. Это означает, что будет проверятся только наличие документа, сам же документ скачиваться и индексироваться не будет. Это полезно для zip,exe,arj и других двоичных файлов, например, для организации поиска по имени файла (что-то наподобии ftp-поиска). Вы можете задавать несколько аргументов для одной команды CheckOnly. Имеет глобальный эффект. Примеры: # Check some known non-text extensions using "string" match: CheckOnly *.b *.sh *.md5 # or check ANY except known text extensions using "regex" match: CheckOnly NoMatch Regex \/$|\.html$|\.shtml$|\.phtml$|\.php$|\.txt$ 3.10.17. Команда HrefOnlyHrefOnly [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ... ] Значение первый трёх необязательных параметров такое же, как и у команды Allow. Используйте эту команду для поиска ссылок в указанных URL. Содержимое самих файлов не индексируется. Команда имеет глобальный эффект. Например, при индексировании почтовых архивов, индесные страницы (типа mail.10.html, thread.21.html, etc.) будут сканировать для поиска ссылок на страницы с письмами, но не будут индексироваться: HrefOnly */mail*.html */thread*.html 3.10.18. Команда CheckMp3CheckMp3 [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ...] Значение первый трёх необязательных параметров такое же, как и у команды Allow. Если URL подпадает под эту команду, то indexer скачает небольшую порцию этого документа и попробует найти тэги MP3 в этом фрагменте. При обнаружении, тэги будут проиндексированы. В противном случае, документ будет скачен целиком и обработан в обычном порядке. Замечание: это работает только для серверов, поддерживающих HTTP/1.1, т.е. используется заголовок "Range: bytes". CheckMp3 *.bin *.mp3 3.10.19. Команда CheckMp3OnlyCheckMP3Only [Match|NoMatch] [NoCase|Case] [String|Regex] <arg> [<arg> ...] Эта команда аналогична команде CheckMP3, за исключением: если тэги MP3 не будут обнаружены, документ не скачивается целиком и не обрабатывается. CheckMP3Only *.bin *.mp3 3.10.20. Команда IndexIfIndexIf [Match|NoMatch] [NoCase|Case] [String|Regex] <section> <arg> [<arg> ... ] Эта команда служит для разрешения индексирования при совпадении шаблона Пример IndexIf regex Title Manual IndexIf body "*important detail*" 3.10.21. Команда NoIndexIfNoIndexIf [Match|NoMatch] [NoCase|Case] [String|Regex] <section> <arg> [<arg> ... ] Эта команда служит для запрещения индексирования при совпадении шаблона Пример NoIndexIf regex Title Sex IndexIf body *xxx* 3.10.22. Команда HoldBadHrefsHoldBadHrefs <time> Задаёт сколько времени хранить документы с ошибочными кодами статуса перед удалением их из базы. Например, если какой-либо веб-сервер временно недоступен, indexer не удалит страницы этого сервера сразу. Однако, если этот сайт будет недоступен продолжительное время, страницы с этого сайта будут удалены по истечении указаного интервала времени. Формат для параметра <time> см. в описании команды Period в Разд. 3.10.26>. HoldBadHrefs 30d 3.10.23. Команда DeleteOlderDeleteOlder <time> Задаёт сколько времени хранить проиндексированные документы в базе. Например, при индексировании новостных сайтов, вы можете задать период, по истечении которого устаревшие страницы новостей будут удалены из базы, независимо от статуса этих документов. Формат для параметра <time> см. в описании команды Period в Разд. 3.10.26>. Значение по умолчанию: 0, - означает "не проверять". Вы можете указать несколько команд DeleteOlder, например, по одной для каждой команды Server. DeleteOlder 7d 3.10.24. Команда UseRemoteContentTypeUseRemoteContentType yes/no Данная команда указывает брать ли тип содержимого из заголовков ответа сервера (yes) или определять его на основании комманд AddType, указанных в файле конфигурации (no). Если задано 'no' и по заданым командам AddType определить тип не удаётся, то используется тип из заголовков ответа сервера. Значение по умолчанию: yes. UseRemoteContentType yes 3.10.25. Команда AddTypeAddType [String|Regex] [Case|NoCase] <mime type> <arg> [<arg>...] Эта команда ассоциирует MIME тип с указаным расширением файла. Эти команды используются при индексировании ссылок со схемой file://. Первые два необязательных параметра используются для задания типа сравнения. По умолчанию используются "String" "NoCase" (нечувствительное к регистру стравнение строк с использованием символов-шаблонов '?' и '*'). AddType image/x-xpixmap *.xpm 3.10.26. Команда PeriodPeriod <time> Задаёт период переиндексирования. <time> указывается в формате 'xxxA[yyyB[zzzC]]' (пробелы допустимы между xxx и A и yyy и т.д) здесь xxx, yyy, zzz - числа (возможно отризательные!) A, B, C могут быть одним из следующего: s - секунда M - минута h - час d - день m - месяц y - год (эти символы такие же как и для функций strptime/strftime). Примеры: 15s - 15 секунд 4h30M - 4 часа и 30 минут 1y6m-15d - 1 год и шесть месяцев минус 15 дней 1h-10M+1s - 1 час минус 10 минут плюс 1 секунда Если указано только число без какого-либо символа, то подразумевается, что время задано в секундах. Можно задавать несоклько команд Period, например по одной на каждую команду Server. Period 7d 3.10.27. Команда PeriodByHopsPeriodByHops <hops> [ <time> ] Задаёт период переиндексирования для страниц зо значением глубины в "мышиных кликах" равным <hops>. Формат для <time> такой же как и для команды Period. Можно задавать несоклько команд PeriodByHops, например по одной на каждую команду Server. Если параметр <time> опущен, действие указаного ранее значения отменяется. Если для конретного значения <hops> не задан период переиндексирования командой PeriodByHops, в этом случае используется значение, заданное командой Period. 3.10.28. Команда ExpireAtExpireAt [ A [ B [ C [ D [ E ]]]]] Эта команда позволяет задать точное время устаревания документов. Может задаваться для каждой команда Server/Realm в отдельности, действует до конца файла конфигурации или до следующей команды ExpireAt. ExpireAt указаная без аргументов означает отмену всех ранее указаных значений. A - обозначает минуту, может быть * или 0-59; B - обозначает час, может быть * или 0-23; C - обозначает день месяца, может быть * или 1-31; D - обозначает месяц, может быть * или 1-12; E - обозначает день недели, может быть * или 0-6, 0 - Воскресенье. Команда ExpireAt имеет больший приоритет над командами Period или PeriodByHops. 3.10.29. Команда UseDateHeaderUseDateHeader yes|no Использовать ли заголовок ответа сервера Date если в ответе сервера не содержится заголовок Last-Modified. Значение по-умолчанию: no. 3.10.30. Команда TagTag <string> Используйте эту команду по своему усмотрению чтобы сгруппировать несколько сайтов, помечая их указаным тэгом. При индексировании или поиске, вы можете ограничиваться сайтами только указаного тэга. Можно указывать несколько команд Tag. Команда Tag имеет значение до следующей команды Tag или до конца файла конфигурации. Значение по умолчанию: пустая строка. 3.10.31. Команда TagIfTagIf <tag> [Match|NoMatch] [NoCase|Case] [String|Regex] <section> <arg> [<arg> ... ] Присвоить документу тэг <tag>, если значении секции Пример TagIf Docs regex Title Manual 3.10.32. Команда CategoryCategory <string> Вы можете помечать документы при помощи вложеный категорий. Категория - строка шестнадцатиричных цмфр. Вы можете иметь до 6 уровней вложенности по 256 элементов на каждом уровне. Пустая категоря означает корень дерева категорий. См. Разд. 6.2> для дальнейшего описания. # This command means a category on first level: Category AA # This command meand a category on 5th level: Category FFAABBCCDD 3.10.33. Команда CategoryIfCategoryIf <category> [Match|NoMatch] [NoCase|Case] [String|Regex] <section> <arg> [<arg> ... ] Присвоить документу категорию <category>, если значение секции Пример CategoryIf 010F regex Title "JOB ID" 3.10.34. Команда MaxHopsMaxHops <number> Максимальная глубина пути в "мышиных кликах" от начального URL. Значение по умолчанию: 256. Может быть задано несколько команд MaxHops, например, по одной на каждую команду Server. Действует до конца файла конфигурации, либо до следующей команды MaxHops. MaxHops 256 3.10.35. Команда TrackHopsTrackHops yes|no Включает или выключает ведение счётчика hops при переиндексировании. Значение по умолчанию: no (выключено). Если включено, то при переиндексировании значение hops для url вычисляется заново, иначе значение hops вычисляется один раз при помещении url в базу. TrackHops yes 3.10.36. Команда MaxDepthMaxDepth <number> Максимальная глубина директории в url. Значение по умолчанию 16. Может быть задано несколько команд MaxDepth, например, по одной на каждую команду Server. Действует до конца файла конфигурации, либо до следующей команды MaxDepth. MaxDepth 2 3.10.37. Команда MaxDocsPerServerMaxDocsPerServer <number> Ограничивает число документов, выкачиваемых с одного Server. Значение по умолчанию: -1, что обозначает "без ограничений". Если задано неотрицательное значение, за один запуск indexer будет проиндексировано не более указанного числа документов, относящихся к одной команда Server или Realm. Может быть задано несколько команд MaxDocsPerServer, например, по одной на каждую команду Server. Действует до конца файла конфигурации, либо до следующей команды MaxDocsPerServer. MaxDocsPerServer 100 3.10.38. Команда MaxHrefsPerServerMaxHrefsPerServer <number> Ограничивает число ссылок, собираемых с одного Server. Значение по умолчанию: -1, что обозначает "без ограничений". Если задано неотрицательное значение, за один запуск indexer будет собирать не более указанного числа ссылок, относящихся к одной команда Server или Realm. Может быть задано несколько команд MaxHrefsPerServer, например, по одной на каждую команду Server. Действует до конца файла конфигурации, либо до следующей команды MaxHrefsPerServer. MaxHrefsPerServer 100 3.10.39. Команда MaxNetErrorsMaxNetErrors <number> Задаёт максимальное число сетевых ошибок для каждого сервера. Значение по умолчанию: 16. Используйте значение 0 для выключения проверки. Если число ошибок при обращении к какому-то серверу превысит заданое число (например, хост временно не доступен), indexer больше небудет пытаться получить документы с этого сервера. Команда действует до конца файла конфигурации, или до следующей команды MaxNetErrors. MaxNetErrors 16 3.10.40. Команда ReadTimeOutReadTimeOut <time> Таймаут ожидания соединения или продолжения получения данных.
Формат ReadTimeOut 30s 3.10.41. Команда DocTimeOutDocTimeOut <time> Указывает максимальное время ожидания получения всего документа.
Формат DocTimeOut 1m30s 3.10.42. Команда NetErrorDelayTimeNetErrorDelayTime <time> Указывает период, на который будет отложена обработка документа при возникновении сетевых ошибок при его получении.
Формат NetErrorDelayTime 1d 3.10.43. Команда CookiesCookies yes/no Включает поддерку ключиков HTTP (HTTP cookies). Команда действует до конца файла, или до следующей команды Cookies. Значение по умолчанию: no. Cookies yes 3.10.44. Команда RobotsRobots yes/no Разрешает или запрещает использование robots.txt и <META NAME="robots" ...>
для исключения страниц. Используйте Robots yes 3.10.45. Команда RobotsPeriodПо умолчанию, данные из robots.txt хранятся в SQL-базе одну неделю. Вы можете изменить этот период используя команду RobotsPeriod: RobotsPeriod <time>См. формат <time> в описании команды Period из Разд. 3.10.26>. RobotsPeriod 30d 3.10.46. Команда CrawlDelayИспользуйте эту команду для задания периода в секундах между последовательными запросами к одному и тому же серверу. Аналогична команде crawl-delay в файле robots.txt, но может быть задана в indexer.conf файле для каждого сервера в отдельности. Если не задано значение crawl-delay value в robots.txt, используется значение, указаное в CrawlDelay. Если значение crawl-delay указано в robots.txt, тогда используется максимальное значение из CrawlDelay и crawl-delay. 3.10.47. Команда SectionSection <string> <number> <maxlen> [strict] [ <pattern> <replacement> ] где Вы можете указать параметр # Standard HTML sections: body, title Section body 1 256 Section title 2 128 # строгая токенизация для URL Section url 3 0 strict # шаблон регулярного выражения для секции Section GoodName 3 128 "<h1>([^<]*)</h1>" "<b>GoodName:</b> $1" 3.10.48. Команда HrefSectionHrefSection <string> [ <pattern> <replacement> ] где # Standard HTML sections: body, title HrefSection link HrefSection NewLink "<newlink>([^<]*)</newlink>" "$1" 3.10.49. Команда FastHrefCheckКоманда "FastHrefCheck yes" полезна для ускорения индексирования, если ваш список команд Server/Realm/Subnet огромен, т.к. она выключает проверку ссылок по списку серверов на этапе парсинга страницы. 3.10.50. Команда IndexIndex yes/no Разрешает или запрещает сохранения проиндексированных слов в базу. Применяется, например, при проверке ссылок на страницах сайта или сайтов. Команда действует до конца файла, или до следующей команды Index. Значение по умолчанию: yes. Prevent indexer from storing words into database. Index no 3.10.51. Команда ProxyAuthBasicProxyAuthBasic login:passwd Задаёт http proxy basic authorization. Может быть указана перед каждой командой Server, но действует только для этой команды!. Может также использовать перед командой Proxy. Примеры: ProxyAuthBasic somebody:something 3.10.52. Команда ProxyProxy your.proxy.host[:port] Вместо прямого соединения, использовать прокси-соединение. Значение номера порта по умолчанию: 3128 (Squid). Команда действует до конца файла, или до следующей команды Proxy. Если не указано ни одной команды Proxy, или для этой команды не указан хост - используется прямое соединение. Примеры: # Proxy on atoll.anywhere.com, port 3128: Proxy atoll.anywhere.com # Proxy on lota.anywhere.com, port 8090: Proxy lota.anywhere.com:8090 # Disable proxy (direct connect): Proxy 3.10.53. Команда AuthBasicAuthBasic login:passwd Включает использование basic http authorization. Может быть указана перед каждой командой Server, но действует только для этой команды!. Примеры: AuthBasic somebody:something # If you have password protected directory(ies), but whole server is open,use: AuthBasic login1:passwd1 Server http://my.server.com/my/secure/directory1/ AuthBasic login2:passwd2 Server http://my.server.com/my/secure/directory2/ Server http://my.server.com/ 3.10.54. Команда ServerWeightServerWeight <number> Задаёт вес Server для расчёта Popularity Rank (см. Разд. 8.5.3>). Значение по умолчанию: 1. ServerWeight 1 3.10.55. Команда OptimizeAtUpdateOptimizeAtUpdate yes Задаёт стратегию оптимизации индекса слов. Значение по умолчанию: no. Если включено, позволяет экономить дисковое пространство, однако замедляет процесс индексирования. Может указываться и в indexer.conf и в cached.conf. 3.10.56. Команда SkipUnreferredSkipUnreferred yes|no|del Значение по умолчанию: no. Используйте эту команду для пропуска переиндексации или для удаления документов, на которые никто не ссылается. Для этой команды требуется включить сбор ссылок (см. Разд. 8.5.3>). 3.10.57. Команда BindBind 127.0.0.1 Если ваша система имеет несколько сетевых интерфейсов, вы можете используйте эту команду для задания локального ip адреса. 3.10.58. Команда ProvideRefererProvideReferer yes Используйте эту команду для передачи заголовка запроса Referer: для HTTP и HTTPS соединений. 3.10.59. Команда LongestTextItemsLongestTextItems 4 Используйте эту команду для указания числа самых длинных текстовых элементов к индексированию. 3.10.60. Команда MakePrefixesПри помощи команды MakePrefixes yes вы можете указать indexer автоматически создавать префиксы для всех индексируемых слов. В частности, это можно использовать при создании поисковых подсказок.
|