Как создать поисковую систему внутри сайта с помощью php? - PullRequest
1 голос
/ 10 ноября 2009

Я хочу создать поисковую систему внутри сайта с помощью php. Пользователи должны войти, чтобы увидеть информацию. Поэтому я не могу использовать код поисковой системы Google или Yahoo.

Я хочу заставить движок искать текст и страницы, а не таблицы в базе данных mysql прямо сейчас

Кто-нибудь когда-нибудь делал это? Не могли бы вы дать мне несколько советов, чтобы помочь мне начать?

Ответы [ 6 ]

3 голосов
/ 10 ноября 2009

Возможно, вы захотите взглянуть на Sphinx http://sphinxsearch.com/, это поисковая система, к которой легко получить доступ из php-скриптов.

3 голосов
/ 10 ноября 2009

вам понадобится паук, который собирает страницы с вашего сайта (например, в задании cron), извлекает html и сохраняет их в базе данных

0 голосов
/ 12 ноября 2009

Я использовал sphider , наконец, это бесплатный инструмент, и он хорошо работает с php.

Спасибо всем.

0 голосов
/ 10 ноября 2009

У вас есть контроль над вашим сервером? Тогда я бы порекомендовал установить Solr / Lucene для индекса и SolPHP для взаимодействия с PHP. Таким образом, вы можете иметь аспекты и другие приятные функции полнотекстового поиска.

Я бы не пауковал настоящие страницы, вместо этого я бы пауковал страницы без навигации и других вещей, не связанных с контентом.

SOLR реквизиты Java на сервере.

0 голосов
/ 10 ноября 2009

Вы можете немного обмануть, как это делает очень ненавистный веб-сайт Experts-Exchange. Это сайт вопросов и ответов для коммерческого программиста, очень похожий на StackOverflow. Чтобы увидеть ответы, нужно заплатить, но иногда ответы появляются в результатах поиска Google. Совершенно очевидно, что E-E представляет разные страницы для веб-сканеров и разные для людей. Вы можете использовать тот же трюк, а затем добавить пользовательский поиск Google на свой сайт. Пользователи, которые вошли в систему, увидят результаты, в противном случае они будут возвращены на экран входа в систему.

0 голосов
/ 10 ноября 2009

Если содержание и заголовки ваших страниц уже управляются базой данных, вам просто нужно написать свою поисковую систему на php. Существует множество решений для запроса вашей базы данных, например:

http://www.webreference.com/programming/php/search/

Если содержимое содержится только в HTML-файлах, а не в БД, вы можете написать паука.

Возможно, вас также заинтересует кэширование результатов для улучшения производительности.

Я бы сказал, что все зависит от размера и сложности вашего сайта / веб-приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...