(Больше, чем просто) Как настроить Apache Solr в Drupal 8 для эффективного поиска
Опубликовано: 2020-04-28Сочетание возможностей Apache Solr и Drupal 8 приводит к непревзойденному цифровому опыту с высокопроизводительными функциями и функциями поиска корпоративного уровня. В этой статье мы узнаем, почему следует выбрать Drupal Apache Solr и как мы можем настроить Apache Solr в Drupal 8.
Что такое Apache Solr?
Solr - это надежная и расширяемая платформа API поиска с открытым исходным кодом, которая обеспечивает распределенное индексирование и запросы с балансировкой нагрузки. Созданный изначально для CNET Networks и компанией CNET Networks, этот проект на основе Java позже был предложен Фонду программного обеспечения Apache. Drupal Apache Solr - лучшее решение для сверхбыстрых, надежных и отличных поисковых приложений. Крупные пушки, такие как Netflix, Instagram и Twitter, включая различные сайты электронной коммерции и CMS, используют Apache Solr для своих функций поиска.

Почему выбирают Apache Solr?
Почему в ядре Drupal 8 доступно множество опций для реализации функций и возможностей API поиска, почему вы должны выбирать Apache Solr с Drupal 8? Вот несколько причин, по которым Drupal Apache Solr может лучше всего подходить для вашего проекта:
- Drupal Apache Solr предлагает фасетную навигацию, позволяющую пользователям добавлять несколько фильтров, которые могут помочь им легко перемещаться по горам информации. Фасеты - это элементы навигации, которые можно запрашивать.
- Он позволяет выполнять полнотекстовый поиск, предлагая точные результаты, а также возможности индексации и поиска в режиме реального времени. Индексирование с помощью Drupal Apache Solr не только быстрее, но и может быть объединено и оптимизировано.
- Функция Hit Highlight позволяет выделять искомые слова или фразы, чтобы их было легко идентифицировать.
- Функция динамической кластеризации позволяет группировать результаты поиска и предлагать связанные поиски или рекомендации.
- Позволяет проверять орфографию и предлагать автозаполнение для более удобного использования API поиска.
Использование Drupal Apache Solr позволяет лучше контролировать поиск на вашем веб-сайте и предлагает интерактивный интерфейс администратора. Узнайте, как мы помогли ведущему поставщику медицинских услуг повысить эффективность поиска с помощью Apache Solr и Drupal.
Реализация Apache Solr в Drupal 8
Разобьем этот процесс на следующие части:
- Установить Apache Solr
- Установите модуль Drupal Solr
- Настройте Apache Solr с модулем Drupal
1. Установка Apache Solr
Шаг 1. Установите Java
Поскольку Apache Solr полностью основан на Java, нам для начала нужно установить Java. Для Apache Solr 7 нам потребуется Java 8 или выше. Если в вашей системе не установлена Java, установите Java с помощью следующей команды -
$ sudo apt установить openjdk-11-jdk
Проверьте активную версию Java, используя следующую команду -
$ java -версия
Шаг 2. Установите Apache Solr в Ubuntu
Теперь вы можете скачать последнюю версию Apache Solr с официального сайта. В противном случае вы также можете использовать команду ниже -
$ cd / opt $ wget https://archive.apache.org/dist/lucene/solr/7.7.2/solr-7.7.2.tgz
Теперь извлеките сценарий оболочки установщика службы Apache Solr из загруженного файла архива Solr и запустите установщик, используя следующие команды.
$ tar xzf solr-7.7.2.tgz solr-7.7.2 / bin / install_solr_service.sh --strip-components = 2
$ sudo bash ./install_solr_service.sh solr-7.7.2.tgz
Теперь Solr должен быть установлен в вашей системе. Вы можете использовать эти команды для запуска, остановки и проверки статуса службы Solr -
$ sudo service solr stop $ sudo service solr start $ sudo service solr статус
По умолчанию Solr работает на порту 8983. Вы можете получить доступ к своей административной панели Solr, набрав localhost: 8983 в своем браузере.

2. Установка модуля Search API Solr в Drupal 8
Модуль Drupal 8 Search API Solr должен быть установлен, прежде чем мы продолжим. Этот модуль поиска интегрирует Drupal с поисковой платформой Apache Solr и предоставляет бэкэнд Solr для модуля Search API.
Установите этот модуль Drupal solr на свой сайт с помощью Composer, используя следующую команду -
$ composer требует drupal / search_api_solr
Как только это будет сделано, включите модуль.
Перейдите в Extend → Search Search API Solr Search → Включите его.
3. Настройте Apache Solr с помощью модуля Drupal Search API Solr.
Шаг 1. Создайте ядро в Apache Solr
После установки Solr вам необходимо создать ядро в Solr для работы с платформой Solr. Это важный шаг, на котором мы можем проиндексировать содержимое ядра Solr. Вы можете увидеть проиндексированный контент в созданном вами ядре. Вы можете создать ядро, используя следующую команду в ubuntu -
$ sudo su - solr -c "/ opt / solr / bin / solr create -c first_solr_core -n data_driven_schema_configs"
Эта команда будет отличаться в зависимости от того, где установлен Solr. Здесь он находится в папке / opt моей системы Ubuntu. Вы можете увидеть созданное ядро в админке Solr.

Шаг 2: Создайте сервер Solr
На этом этапе вам нужно создать сервер Solr и проиндексировать его на своем веб-сайте Drupal. Чтобы создать сервер Solr -

Перейдите в Конфигурация -> Поиск и метаданные -> API поиска -> нажмите Добавить сервер.

Когда вы нажмете на Добавить сервер, вы получите одну форму, которую вам нужно заполнить.
- Имя сервера: введите имя сервера
- Включить: необходимо установить флажок «Включить». Если вы не включите его, вы не сможете индексировать элементы.
- Добавить описание сервера: краткое описание сервера.

Далее вам нужно настроить бэкэнд Solr. Нажмите на КОНФИГУРАЦИЮ SOLR BACKEND в форме. Вы можете увидеть элементы формы, как показано на изображении ниже:

Разъем Solr: Доступно четыре разъема. Вам необходимо выбрать коннектор для использования с этим сервером Solr. Я использую стандартный разъем.
Протокол HTTP: выберите https или Http (в зависимости от того, использует ли ваш сервер SSL или нет).
Хост Solr: localhost (если ваш сервер Solr находится на другом компьютере, введите здесь IP или имя хоста этого хоста)
Порт Solr: 8983 (это порт по умолчанию)
Путь к Solr: "/" (Путь для поиска сервера основан на версии сервера solr. Если версия сервера solr - 6.6.4, в этом случае путь solr отличается от "/ solr").
Ядро Solr: введите имя ядра Solr, которое вы создали ранее.
Значения, определенные по умолчанию, работают нормально. Однако вы также можете изменить их соответствующим образом.
Шаг 3. Создайте поисковый индекс
Здесь мы собираемся создать индекс Search API, который будет индексировать источники данных, выбранные вами в индексе. Чтобы создать индекс -
Перейдите в Конфигурация -> Поиск и метаданные -> API поиска -> Добавить индекс.

Имя индекса: введите имя индекса.
Источники данных: здесь вам нужно выбрать источники данных для индексации элементов для функции поиска. В моем примере я выбрал контент. Когда вы выбираете контент, вы получите возможность выбрать пакеты в КОНФИГУРАЦИИ ДАННЫХ КОНТЕНТА . Здесь вам нужно выбрать пакеты, которые вы хотите проиндексировать.
Сервер : выберите сервер для индексации элементов. Я выбрал Apache-solr-server.
Включено : это включает индекс. Не забудьте также включить выбранный сервер, чтобы это работало.
После этого нажмите «Сохранить» и добавьте поле.

После успешного создания индекса вам теперь нужно добавить в него поля.
Чтобы добавить нужное поле, вернитесь к API поиска, нажмите «Изменить индекс, который вы создали».
После этого вы увидите вкладку «Поля». Щелкните вкладку полей, и вы увидите окно, как показано на изображении ниже.

Затем щелкните поля Добавить. В появившемся всплывающем окне нужно добавить нужные поля. После добавления полей нажмите Готово, а затем - Сохранить.

Теперь на сайте созданы Индекс и сервер. После этого следующим важным шагом будет копирование файлов конфигурации в ядро Solr. Для этого вам необходимо загрузить файлы конфигурации с сервера на веб-сайте.
Перейдите в Конфигурация -> Поиск и метаданные -> API поиска -> <Имя сервера>
Вы получите окно, как показано на изображении ниже -

Затем нажмите кнопку « Получить config.zip ». Это загрузит папку config. После этого извлеките zip-папку и скопируйте все файлы в папку conf в ядре.

Чтобы скопировать файлы, откройте терминал и перейдите в папку ядра Solr. В Ubuntu основная папка Solr будет храниться в каталоге / var / solr / data . В папке данных вы увидите основную папку Solr, которую вы создали ранее. Перейдите в эту папку ядра Solr, и вы найдете папку с именем conf . в этой папке вы найдете несколько файлов. Удалите эти файлы и скопируйте все файлы из папки конфигурации, загруженной с сервера веб-сайта. После этого вам необходимо перезапустить сервер Solr в терминале.
Следующий шаг - проиндексировать содержимое -
Перейдите в раздел «Конфигурация» -> «Поиск и метаданные» -> «API поиска» -> щелкните по созданному вами индексу. Вы увидите окно, как показано на изображении ниже.

Затем щелкните указатель, чтобы проиндексировать содержимое. Теперь все содержимое проиндексировано в ядре Solr. Теперь вы можете создать представление индекса Solr и добавить проиндексированные поля в представление, чтобы получить результаты из Drupal 8 Solr.
