(Plus que juste) Comment configurer Apache Solr dans Drupal 8 pour une expérience de recherche puissante
Publié: 2020-04-28La combinaison des puissances d'Apache Solr et de Drupal 8 permet d'obtenir des expériences numériques inégalées avec des fonctionnalités et des fonctionnalités de recherche performantes au niveau de l'entreprise. Dans cet article, nous apprendrons pourquoi Drupal Apache Solr doit être choisi et comment nous pouvons configurer Apache Solr dans Drupal 8.
Qu'est-ce qu'Apache Solr ?
Solr est une plate-forme d'API de recherche open source solide et ascendante qui fournit une indexation distribuée et des requêtes à charge équilibrée. Construit initialement pour et par les réseaux CNET, ce projet basé sur Java a ensuite été proposé à la fondation Apache Software. Drupal Apache Solr est la meilleure solution pour des applications de recherche ultra-rapides, crédibles et impressionnantes. Les gros canons comme Netflix, Instagram et Twitter, y compris divers sites de commerce électronique et CMS, utilisent Apache Solr pour leur fonctionnalité de recherche.

Pourquoi choisir Apache Solr ?
Avec de nombreuses options disponibles dans Drupal 8 core pour implémenter les fonctionnalités et fonctionnalités de votre API de recherche, pourquoi devriez-vous choisir Apache Solr avec Drupal 8 ? Voici quelques raisons pour lesquelles Drupal Apache Solr pourrait être le mieux adapté à votre projet :
- Drupal Apache Solr propose une navigation à facettes pour permettre aux utilisateurs d'ajouter plusieurs filtres qui peuvent les aider à naviguer facilement à travers des tas d'informations. Les facettes sont des éléments de navigation qui peuvent être interrogés.
- Il permet des recherches en texte intégral qui offrent des résultats précis ainsi que ses capacités d'indexation et de recherche en temps quasi réel. L'indexation avec Drupal Apache Solr n'est pas seulement plus rapide, elle peut également être fusionnée et optimisée davantage.
- La fonction Hit Highlight permet de mettre en surbrillance les mots ou expressions recherchés pour faciliter leur identification.
- La fonctionnalité de clustering dynamique permet de regrouper les résultats de recherche et de proposer des recherches ou des recommandations associées.
- Permet la vérification orthographique et les suggestions de saisie semi-automatique pour une meilleure expérience de l'API de recherche.
L'utilisation de Drupal Apache Solr permet un meilleur contrôle de la recherche de votre site Web et offre une interface d'administration interactive. Découvrez comment nous avons permis à un fournisseur de soins de santé de premier plan d'améliorer son expérience de recherche avec Apache Solr et Drupal.
Implémentation d'Apache Solr dans Drupal 8
Divisons ce processus en les parties suivantes :
- Installer Apache Solr
- Installer le module Drupal Solr
- Configurer Apache Solr avec le module Drupal
1. Installation d'Apache Solr
Étape 1 : installer Java
Comme Apache Solr est entièrement basé sur Java, nous devons d'abord installer Java. Pour Apache Solr 7, nous avons besoin de Java 8 ou supérieur pour fonctionner. Si Java n'est pas installé sur votre système, installez Java à l'aide de la commande ci-dessous -
$sudo apt installer openjdk-11-jdk
Vérifiez la version Java active à l'aide de la commande ci-dessous -
$java -version
Étape 2 : Installez Apache Solr sur Ubuntu
Maintenant, vous pouvez télécharger la dernière version d'Apache Solr depuis son site officiel. Sinon, vous pouvez également utiliser la commande ci-dessous -
$cd/opt $wget https://archive.apache.org/dist/lucene/solr/7.7.2/solr-7.7.2.tgz
Maintenant, extrayez le script shell du programme d'installation du service Apache Solr du fichier d'archive Solr téléchargé et exécutez le programme d'installation à l'aide des commandes suivantes.
$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
Maintenant, Solr doit être installé sur votre système. Vous pouvez utiliser ces commandes pour démarrer, arrêter et vérifier l'état du service Solr -
$sudo service solr stop $sudo service solr start État du service $ sudo solr
Solr par défaut s'exécute sur le port 8983. Vous pouvez accéder à votre panneau d'administration Solr en tapant localhost:8983 dans votre navigateur.

2. Installation du module Search API Solr dans Drupal 8
Le module Drupal 8 Search API Solr doit être installé avant d'aller plus loin. Ce module de recherche intègre Drupal à la plate-forme de recherche Apache Solr et fournit un backend Solr pour le module API de recherche.
Installez ce module Drupal solr sur votre site à l'aide de Composer à l'aide de la commande ci-dessous -
$composer requiert drupal/search_api_solr
Une fois cela fait, activez le module.
Allez dans Étendre → Rechercher l'API de recherche Solr Search → Activez-le
3. Configurer Apache Solr avec le module Solr de l'API de recherche Drupal
Étape 1 : Créer un noyau dans Apache Solr
Après l'installation de Solr, vous devez créer un noyau dans Solr afin de travailler avec la plate-forme Solr. C'est une étape importante où nous pouvons indexer le contenu dans le noyau Solr. Vous pouvez voir le contenu indexé dans le noyau que vous avez créé. Vous pouvez créer le noyau en utilisant la commande ci-dessous dans Ubuntu -
$sudo su - solr -c "/opt/solr/bin/solr create -c first_solr_core -n data_driven_schema_configs"
Cette commande sera différente selon l'endroit où Solr est installé. Ici, il se trouve dans le dossier /opt de mon système Ubuntu. Vous pouvez voir le noyau créé dans le panneau d'administration de Solr.

Étape 2 : Créer un serveur Solr
Dans cette étape, vous devez créer un serveur Solr et un index sur votre site Web Drupal. Pour créer un serveur Solr –

Allez dans Configuration -> Recherche et métadonnées -> API de recherche -> cliquez sur Ajouter un serveur

Lorsque vous cliquez sur Ajouter un serveur, vous obtenez un formulaire dont vous avez besoin pour remplir ce formulaire
- Nom du serveur : saisissez le nom du serveur
- Activer : vous devez cocher la case Activer. Si vous ne l'activez pas, vous ne pouvez pas indexer les éléments
- Ajouter une description du serveur : une brève description du serveur.

Ensuite, vous devez configurer le backend Solr. Cliquez sur CONFIGURER LE BACKEND SOLR dans le formulaire. Vous pouvez voir les éléments du formulaire comme indiqué dans l'image ci-dessous :

Connecteur Solr : Quatre connecteurs sont disponibles. Vous devez sélectionner un connecteur à utiliser pour ce serveur Solr. J'utilise le connecteur standard.
Protocole HTTP : Choisissez https ou Http (selon si votre serveur utilise SSL ou non).
Hôte Solr : localhost (si votre serveur Solr est sur une autre machine, veuillez entrer l'adresse IP ou le nom d'hôte de cet hôte ici)
Port Solr : 8983 (c'est le port par défaut)
Chemin Solr : "/" (Le chemin pour localiser le serveur et il est basé sur la version du serveur Solr Si la version du serveur Solr est 6.6.4, dans ce cas, le chemin Solr est différent comme "/solr" ).
Solr core : saisissez le nom du solr core que vous avez créé auparavant.
Les valeurs définies par défaut fonctionnent correctement. Cependant, vous pouvez également les modifier en conséquence.
Étape 3 : Créer l'index de recherche
Ici, nous allons créer un index d'API de recherche qui indexera les sources de données que vous avez sélectionnées dans l'index. Pour créer un index –
Allez dans Configuration -> Recherche et métadonnées -> API de recherche -> Ajouter un index

Nom d'index : saisissez un nom d'index.
Sources de données : Ici, vous devez sélectionner les sources de données pour indexer les éléments pour la fonctionnalité de recherche. Dans mon exemple, j'ai sélectionné le contenu. Lorsque vous sélectionnez le contenu, vous aurez la possibilité de sélectionner les ensembles dans CONFIGURER LA SOURCE DE DONNÉES DE CONTENU . Ici, vous devez sélectionner les lots que vous souhaitez indexer.
Serveur : Sélectionnez le serveur pour indexer les éléments. J'ai sélectionné le serveur Apache-solr.
Activé : Ceci active l'index. N'oubliez pas d'activer également le serveur sélectionné pour que cela fonctionne.
Une fois terminé, appuyez sur Enregistrer et ajoutez le champ.

Après avoir réussi à créer un index, vous devez maintenant ajouter des champs à l'index.
Pour ajouter le champ dont vous avez besoin, retournez dans l'API de recherche, cliquez sur Editer l'index que vous avez créé.
Vous verrez alors l'onglet Champs. Cliquez sur l'onglet champs et vous verrez une fenêtre comme indiqué dans l'image ci-dessous.

Ensuite, cliquez sur les champs Ajouter. Dans la fenêtre contextuelle qui apparaît, vous devez ajouter les champs dont vous avez besoin. Après avoir ajouté les champs, cliquez sur Terminé puis sur Enregistrer.

Maintenant, l'index et le serveur sont créés sur le site Web. Après cela, la prochaine étape importante consiste à copier les fichiers de configuration dans le noyau Solr. Pour cela, vous devez télécharger les fichiers de configuration à partir du serveur sur le site Web.
Allez dans Configuration -> Recherche et métadonnées -> API de recherche -> <Nom du serveur>
Vous obtiendrez une fenêtre comme indiqué dans l'image ci-dessous -

Cliquez ensuite sur le bouton « Get config.zip ». Cela téléchargera le dossier de configuration. Une fois cela fait, extrayez le dossier zip et copiez tous les fichiers dans le dossier conf du noyau.

Pour copier les fichiers, ouvrez le terminal et accédez au dossier principal de Solr. Dans Ubuntu, le dossier principal de Solr sera stocké dans le fichier /var/solr/data . Dans le dossier de données, vous verrez le dossier principal Solr que vous avez créé précédemment. Accédez à ce dossier principal de Solr et vous trouverez un dossier portant le nom conf . dans ce dossier, vous trouverez quelques fichiers. Supprimez ces fichiers et copiez tous les fichiers du dossier de configuration téléchargé à partir du serveur du site Web. Une fois cela fait, vous devez redémarrer votre serveur Solr dans le terminal.
L'étape suivante consiste à indexer le contenu -
Allez dans Configuration -> Recherche et métadonnées -> API de recherche -> cliquez sur l'index que vous avez créé. Vous verrez une fenêtre comme indiqué dans l'image ci-dessous.

Ensuite, cliquez sur l'index pour indexer le contenu. Désormais, tous les contenus sont indexés dans le noyau Solr. Vous pouvez maintenant créer une vue de l'index Solr et ajouter les champs indexés à la vue pour obtenir les résultats de Drupal 8 Solr.
