(Mehr als nur) So konfigurieren Sie Apache Solr in Drupal 8 für ein leistungsstarkes Sucherlebnis

Veröffentlicht: 2020-04-28

Die Kombination der Leistungsfähigkeit von Apache Solr und Drupal 8 führt zu unübertroffenen digitalen Erlebnissen mit leistungsstarken Suchfunktionen und -funktionen auf Unternehmensebene. In diesem Artikel erfahren Sie, warum man sich für Drupal Apache Solr entscheiden sollte und wie wir Apache Solr in Drupal 8 konfigurieren können.

Was ist Apache Solr?

Solr ist eine solide und aufsteigende Open-Source-Such-API-Plattform, die verteilte Indizierung und Abfragen mit Lastenausgleich bietet. Dieses Java-basierte Projekt wurde ursprünglich für und von CNET Networks entwickelt und später der Apache Software Foundation angeboten. Drupal Apache Solr ist die beste Lösung für superschnelle, glaubwürdige und beeindruckende Suchanwendungen. Große Geschütze wie Netflix, Instagram und Twitter, einschließlich verschiedener E-Commerce-Sites und CMS, verwenden Apache Solr für ihre Suchfunktionen.

Dupal-Apache-Solr

Warum Apache Solr wählen?

Bei vielen Optionen, die in Drupal 8 Core zur Verfügung stehen, um Ihre Such-API-Funktionen und -Features zu implementieren, warum sollten Sie sich für Apache Solr mit Drupal 8 entscheiden? Hier sind einige Gründe, warum Drupal Apache Solr die beste Lösung für Ihr Projekt sein könnte:

  1. Drupal Apache Solr bietet facettierte Navigation, damit Benutzer mehrere Filter hinzufügen können, die ihnen helfen, leicht durch die Informationsberge zu navigieren. Facetten sind abfragbare Navigationselemente.
  2. Es ermöglicht Volltextsuchen, die zusammen mit seinen Indizierungs- und Suchfunktionen nahezu in Echtzeit präzise Ergebnisse liefern. Die Indizierung mit Drupal Apache Solr ist nicht nur schneller, sondern lässt sich auch zusammenführen und weiter optimieren.
  3. Die Hit Highlight-Funktion ermöglicht das Hervorheben von Suchbegriffen oder -phrasen, um sie leichter zu identifizieren.
  4. Die dynamische Clustering-Funktion ermöglicht es, Suchergebnisse zu gruppieren und verwandte Suchen oder Empfehlungen anzubieten.
  5. Ermöglicht eine Rechtschreibprüfung und Vorschläge zur automatischen Vervollständigung für ein besseres Such-API-Erlebnis.

Die Verwendung von Drupal Apache Solr ermöglicht eine bessere Kontrolle über Ihre Website-Suche und bietet eine interaktive Admin-Oberfläche. Sehen Sie sich an, wie wir einem führenden Anbieter im Gesundheitswesen ermöglicht haben, seine Sucherfahrung mit Apache Solr und Drupal zu verbessern.

Implementieren von Apache Solr in Drupal 8

Unterteilen wir diesen Vorgang in folgende Teile:

  1. Apache Solr installieren
  2. Installieren Sie das Drupal Solr-Modul
  3. Konfigurieren Sie Apache Solr mit dem Drupal-Modul

1. Installieren von Apache Solr

Schritt 1: Java installieren

Da Apache Solr vollständig auf Java basiert, müssen wir zunächst Java installieren. Für Apache Solr 7 benötigen wir Java 8 oder höher zum Ausführen. Wenn Java nicht auf Ihrem System installiert ist, installieren Sie Java mit dem folgenden Befehl –

 $sudo apt install openjdk-11-jdk

Überprüfen Sie die aktive Java-Version mit dem folgenden Befehl -

 $java-Version

Schritt 2: Apache Solr unter Ubuntu installieren

Jetzt können Sie die neueste Apache Solr-Version von der offiziellen Website herunterladen. Andernfalls können Sie auch den folgenden Befehl verwenden –

 $cd /opt
$wget https://archive.apache.org/dist/lucene/solr/7.7.2/solr-7.7.2.tgz

Extrahieren Sie nun das Shell-Skript des Apache Solr-Dienstinstallationsprogramms aus der heruntergeladenen Solr-Archivdatei und führen Sie das Installationsprogramm mit den folgenden Befehlen aus.

$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

Jetzt sollte Solr auf Ihrem System installiert sein. Sie können diese Befehle verwenden, um den Solr-Dienst zu starten, zu stoppen und zu überprüfen –

 $sudo service solr stop
$sudo service solr start
$sudo service solr status

Standardmäßig läuft Solr auf Port 8983. Sie können auf Ihr Solr-Admin-Panel zugreifen, indem Sie localhost:8983 in Ihren Browser eingeben.

Installieren-apache-solr

2. Installieren des Search API Solr-Moduls in Drupal 8

Das Drupal 8 Search API Solr-Modul sollte installiert sein, bevor wir fortfahren. Dieses Suchmodul integriert Drupal in die Apache Solr-Suchplattform und bietet ein Solr-Backend für das Search-API-Modul.

Installieren Sie dieses Drupal-Solr-Modul in Ihrer Site mit Composer mit dem folgenden Befehl –

 $composer erfordert drupal/search_api_solr

Sobald dies erledigt ist, aktivieren Sie das Modul.

 Gehen Sie zu Erweitern → Search Search API Solr Search → Aktivieren Sie es

3. Konfigurieren Sie Apache Solr mit dem Drupal Search API Solr-Modul

Schritt 1: Erstellen Sie einen Kern in Apache Solr

Nach der Installation von Solr müssen Sie einen Core im Solr erstellen, um mit der Solr-Plattform zu arbeiten. Dies ist ein wichtiger Schritt, bei dem wir den Inhalt für den Solr-Kern indizieren können. Sie können den indizierten Inhalt in dem von Ihnen erstellten Kern sehen. Sie können den Kern mit dem folgenden Befehl in Ubuntu erstellen –

$sudo su - solr -c "/opt/solr/bin/solr create -c first_solr_core -n data_driven_schema_configs"

Dieser Befehl unterscheidet sich je nachdem, wo Solr installiert ist. Hier befindet es sich im /opt-Ordner meines Ubuntu-Systems. Sie können den erstellten Core im Solr-Admin-Panel sehen.

solr-server

Schritt 2: Erstellen Sie einen Solr-Server

In diesem Schritt müssen Sie einen Solr-Server und einen Index in Ihrer Drupal-Website erstellen. So erstellen Sie einen Solr-Server –

Gehen Sie zu Konfiguration -> Suche und Metadaten -> Such-API -> klicken Sie auf Server hinzufügen

Apache solr

Wenn Sie auf Server hinzufügen klicken, erhalten Sie ein Formular, das Sie ausfüllen müssen

  1. Servername: Geben Sie den Servernamen ein
  2. Aktivieren: Sie müssen das Kontrollkästchen aktivieren aktivieren. Wenn Sie es nicht aktivieren, können Sie die Elemente nicht indizieren
  3. Serverbeschreibung hinzufügen: Eine kurze Beschreibung des Servers.
Apache-solr

Als nächstes müssen Sie das Solr-Backend konfigurieren. Klicken Sie im Formular auf SOLR-BACKEND KONFIGURIEREN . Sie können die Formularelemente wie in der folgenden Abbildung sehen:

Sonnenkollektor

Solr-Anschluss: Es stehen vier Anschlüsse zur Verfügung. Sie müssen einen Connector auswählen, der für diesen Solr-Server verwendet werden soll. Ich verwende den Standard-Connector.

HTTP-Protokoll: Wählen Sie https oder Http (je nachdem, ob Ihr Server SSL verwendet oder nicht).
Solr-Host: localhost (wenn sich Ihr Solr-Server auf einem anderen Rechner befindet, geben Sie hier bitte die IP oder den Hostnamen dieses Hosts ein)
Solr-Port: 8983 (Dies ist der Standardport)
Solr-Pfad: "/" (Der Pfad zum Lokalisieren des Servers basiert auf der Solr-Serverversion Wenn die Solr-Serverversion 6.6.4 ist, ist in diesem Fall der Solr-Pfad anders als "/solr" ).
Solr-Kern: Geben Sie den zuvor erstellten Solr- Kernnamen ein.
Die Werte als definierte Standardwerte funktionieren einwandfrei. Sie können sie jedoch auch entsprechend ändern.

Schritt 3: Erstellen Sie den Suchindex

Hier erstellen wir einen Search API-Index, der die Datenquellen indiziert, die Sie im Index ausgewählt haben. So erstellen Sie einen Index –

Gehen Sie zu Konfiguration -> Suche und Metadaten -> Such-API -> Index hinzufügen

Apache-Solr

Indexname: Geben Sie einen Indexnamen ein.

Datenquellen: Hier müssen Sie die Datenquellen auswählen, um die Elemente für die Suchfunktion zu indizieren. In meinem Beispiel habe ich Inhalte ausgewählt. Wenn Sie den Inhalt auswählen, erhalten Sie die Möglichkeit, die Bundles im KONFIGURIEREN DER INHALTSDATENQUELLE auszuwählen . Hier müssen Sie die Bundles auswählen, die Sie indizieren möchten.
Server : Wählen Sie den Server aus, um die Elemente zu indizieren. Ich habe den Apache-solr-Server ausgewählt.
Aktiviert : Dies aktiviert den Index. Vergessen Sie nicht, auch den ausgewählten Server zu aktivieren, damit dies funktioniert.

Wenn Sie fertig sind, klicken Sie auf Speichern und fügen Sie das Feld hinzu.

solr-apache

Nachdem Sie erfolgreich einen Index erstellt haben, müssen Sie dem Index nun Felder hinzufügen.

Um das gewünschte Feld hinzuzufügen, gehen Sie zurück zur Such-API und klicken Sie auf Bearbeiten Sie den von Ihnen erstellten Index.

Sie sehen dann die Registerkarte Felder. Klicken Sie auf die Registerkarte Felder und Sie sehen ein Fenster wie in der Abbildung unten gezeigt.

solr-apache

Klicken Sie anschließend auf Felder hinzufügen. Im angezeigten Popup müssen Sie die benötigten Felder hinzufügen. Klicken Sie nach dem Hinzufügen der Felder auf Fertig und dann auf Speichern.

index-solr

Jetzt werden der Index und der Server auf der Website erstellt. Danach ist der nächste wichtige Schritt, die Konfigurationsdateien in den Solr-Kern zu kopieren. Dazu müssen Sie die Konfigurationsdateien vom Server in der Website herunterladen.

Gehen Sie zu Konfiguration -> Suche und Metadaten -> Such-API -> <Servername>

Sie erhalten ein Fenster wie im Bild unten gezeigt –

Sonnenapache

Klicken Sie als nächstes auf die Schaltfläche " Get config.zip ". Dadurch wird der Konfigurationsordner heruntergeladen. Wenn Sie fertig sind, entpacken Sie den Zip-Ordner und kopieren Sie alle Dateien in den conf-Ordner im Kern.

get-config.zip

Um die Dateien zu kopieren, öffnen Sie das Terminal und wechseln Sie in den Solr-Kernordner. In Ubuntu wird der Solr- Kernordner in /var/solr/data gespeichert . Im Datenordner sehen Sie den Solr-Kernordner, den Sie zuvor erstellt haben. Gehen Sie zu diesem Solr- Kernordner und Sie finden einen Ordner mit dem Namen conf . in diesem Ordner finden Sie einige Dateien. Löschen Sie diese Dateien und kopieren Sie alle Dateien aus dem Konfigurationsordner, der vom Website-Server heruntergeladen wurde. Danach müssen Sie Ihren Solr-Server im Terminal neu starten.
Der nächste Schritt besteht darin, den Inhalt zu indizieren –

Gehen Sie zu Konfiguration -> Suche und Metadaten -> Such-API -> klicken Sie auf den von Ihnen erstellten Index. Sie sehen ein Fenster wie in der Abbildung unten gezeigt.

Suche und Metadaten

Klicken Sie anschließend auf den Index, um den Inhalt zu indizieren. Jetzt sind alle Inhalte im Solr-Kern indiziert. Jetzt können Sie eine Ansicht des Solr-Index erstellen und die indizierten Felder zur Ansicht hinzufügen, um die Ergebnisse von Drupal 8 Solr zu erhalten.