Search API. Работа с Apache Solr

27.11.2012
Share on FacebookShare on TwitterShare on GooglePlusShare on Linkedin
Автор:

 В данной статье будет рассказано о том, как быстро настроить модуль Search API и Search API Solr search, и как данные из Solr сервера отображать с помощью модуля Views. В статье не будет рассказываться, как установить Apache Solr на сервер, поэтому для правильной работы всего, что описано в статье, на сервере уже должен быть установлен Apache Solr.

1) Добавляем необходимые ресурсы.

Добавим в наш Drupal и включим такие модули - Search API, Search API Solr search, Views, CTools, Entity, предварительно загрузив в директорию libraries библиотеку SolrPhpClient. Стоит заметить, что модуль Search facets не включится, так как он требует facetsapi, но пока нам это не так важно.

2) Донастройка Solr сервера.

В директории модуля Search API Solr search есть два файла schema.xml и solrconfig.xml. Нужно заменить в нашем ядре Solr эти файлы на те, что в модуле. После замены файлов нужно Solr перезагрузить (т.е. перезагрузить tomcat или Jetty).

3) Настраиваем админ часть.
У нас появилась вот такая страница:

Нажимаем "Add server". В поле "Service class" выбираем Solr service. После чего, мы видим поля для подключения к нашему solr серверу. В нашем случае, заполненные поля, выглядят так:

После заполнения нажимаем "Create server". В случае правильной настройки мы увидим что-то вроде:

Если все хорошо - возвращаемся к странице /admin/config/search/search_api и нажимаем "Add index". На этой странице веб разработчик должен выбрать что индексировать и с помощью какого сервера. Конечно сервер выбираем тот который мы создали. После заполнения, нажимаем "Create index". Мы попадаем на страницу где нужно выбрать поля. Поля нужно выбрать те с которыми мы хотим работать дальше, например те которые мы будем отображать с помощью модуля views. К тому же мы можем добавить поля из других entity:

После сохранения полей, попадаем на страницу различных настроек индексов полей. Сейчас мы эту страницу пропустим и просто нажимаем сохранить конфигурацию.
Все, теперь можно посмотреть сколько проиндексировано нод на нашем сайте (на странице "Status" в индексе). Если не проиндексировано - нажимаем "index now".
4) Создание view.
После индексации нашего контента можно приступить к созданию view. Переходим на страницу создания view. Чтобы view показывали контент с Solr индекса нам нужно выбрать имя индекса которое мы задавали при создании. В моем случае это "Nodes":

Нажимаем сохранить.
Вуаля! Мы создали view которая показывает материалы с нашего индекса.
to be continued........

1 vote, Rating: 5
Share on FacebookShare on TwitterShare on GooglePlusShare on Linkedin

Также по теме

1

Наша компания очень часто использует модуль Panels для построения сайтов. Хоть это решение добавляет немало...

2

Queue API — специальный функционал в Drupal, который позволяет формировать очередь и контролировать выполнение трудоемких операций на сайте. В отличии от Batch API, Queue...

3

Бывают задачи, для решения которых необходимо создавать свою таблицу в базе данных и потом своими же запросами взаимодействовать с этой таблицей. В таких случаях написание многочисленных запросов...

5

В наши дни все знают о таких интернет-магазинах как eBay, Amazon и.т.д. Но мало...

Need a quote? Let's discuss the project

Are you looking for someone to help you with your Drupal Web Development needs? Let’s get in touch and discuss the requirements of your project. We would love to hear from you.

Join the people who have already subscribed!

Want to be aware of important and interesting things happening? We will inform you about new blog posts on Drupal development, design, QA testing and more, as well news about Drupal events.

No charge. Unsubscribe anytime