Стояла передо мной типичная задача – организовать
полнотекстовый поиск по материалам для сайта. В силу ряда причин (техническое
обеспечение хостинга сайта, организация сайта, политика компании) был выбран
вариант с использованием службы MicrosoftIndexingService,
тем более что ее функционала для тривиального поиска по текстовым файлам
хватало.
По истечении некоторого времени был разработан код, который
великолепно работал на локальной машине, но как только его перенесли на
тестовый сервер – поиск перестал работать :‑(
Не буду подробно описывать, что я делал, чтобы восстановить
работоспособность, скажу только, что в ходе этих мытарств сайт, заточенный под
конкретные настройки, стал более гибким к настройке (что меня несколько
успокаивало). Однако поиск все равно не работал!!!
Был настроен каталог полнотекстового индекса, для него
добавлены папки, подобраны соответствующие запросы, проверены все настройки
службы – не работает… =(
Как оказалось, все дело в маленькой галочке (точнее, ее
отсутствии) в расширенных атрибутах файла (да и папки) «Индексировать содержимое для
быстрого поиска». И подсказал мне это решение человек, далекий от
программирования и никогда не работавший со службой индексирования. Вот так!
Кстати, этот атрибут наследуется от предка, т.е. вы можете задать его и у
папки.
PS: Замечания
для веб-программистов – в свойствах виртуальной папки или веб-узла в IIS на вкладке «Домашний каталог» есть
галочка-аналог «Индексация каталога». Не забывайте про нее. Например, можно
исключить из поиска некоторые служебные файлы, картинки, файлы логов и т.п.