Ajout de résultats de recherche externes au centre de recherche

Il existe un autre type de portée appelé portée de service de recherche à distance, qui utilise des moteurs de recherche externes.

Avant de commencer

Vous devez être connecté en tant qu'administrateur pour pouvoir ajouter un portlet Résultats de recherches externes au centre de recherche .

Le service du moteur de recherche à utiliser doit fournir une interface Web et renvoyer les résultats de la recherche sous la forme d'un flux RSS ou ATOM. Par exemple, la page des résultats de recherche de Google est une page HTML que le portlet Résultats de recherches externes ne peut pas afficher.

Pourquoi et quand exécuter cette tâche

Il existe deux méthodes pour configurer les recherches externes :
  • La première approche consiste à définir des portées externes permettant aux visiteurs de lancer directement des recherches externes à partir de la liste déroulante des portées dans la zone de recherche. Les résultats de la recherche s'affichent dans une nouvelle fenêtre de navigateur.
  • La deuxième approche consiste à définir un moteur de recherche externe qui ajoute des résultats à la page de résultats du centre de recherche. Les visiteurs du site peuvent consulter les résultats du moteur de recherche externe à partir de la page du centre de recherche dans le portlet des résultats externes. La procédure est décrite ci-dessous.

Si le portlet Résultats de recherches externes ne parvient pas à communiquer avec le moteur de recherche tiers, il affiche le message d'erreur suivant : EJPJN0002E : un problème est survenu lors de la recherche. Cela peut être dû à des problèmes de configuration, des problèmes de communication avec le site de recherche externe ou des problèmes avec le site de recherche externe lui-même. Effectuez les étapes suivantes pour vérifier que la communication entre le portail et le moteur de recherche tiers est correctement configurée.

Procédure

  1. Accédez à la page Administration du portail > Gestion de portlets > Portlets.
  2. Recherchez la chaîne Externe.
    Le portlet que vous voulez modifier s'appelle Résultats de recherches externes.
  3. Edit the value of the searchEngineUrl parameter.
    Cette valeur représente l'URL du moteur de recherche externe à interroger. Vous devez inclure le paramètre ${searchTerms} dans la valeur. Le paramètre ${searchTerms} est remplacé par la requête réelle lors de la recherche.
    Exemples d'URL de moteur de recherche :
    Google News :
    http://news.google.com/news?output=rss&q=${searchTerms}
    Yahoo News :
    http://news.search.yahoo.com/news/rss?p=${searchTerms}&ei=UTF-8&eo=UTF-8
    Flickr :
    http://www.flickr.com/services/feeds/photos_public.gne?tags=${searchTerms}&format=atom
  4. Facultatif : Vous pouvez aussi ajouter un lien Plus au bas des résultats de recherches externes, qui mène à la page du moteur.
    Par exemple:
    1. Editez le paramètre searchEngineFullPageUrl.
    2. Dans la zone Valeur, collez l'URL du moteur, plus ${searchTerms}.
      Par exemple: http://www.ibm.com/developerworks/search/searchResults.jsp?searchSite=dW&searchScope=dW&query=${searchTerms}
  5. Pour enregistrer vos modifications, cliquez sur OK deux fois.
  6. Adaptez le fichier de configuration du proxy du portlet Centre de recherche.
    1. Exportez le fichier de configuration de proxy en exécutant la tâche read-outbound-http-connection-config.
      Par exemple, ConfigEngine.sh read-outbound-http-connection-config -DConfigFileName=your_path/config_file.xml -DApplicationScopeRef=PA_Search_Centeryour_path/config_file.xml est le nom de chemin absolu du fichier de configuration de proxy du portlet Centre de recherche.
      Pour plus d'informations sur la tâche read-outbound-http-connection-config, voir Comment lire le profil de configuration d'une connexion HTTP sortante
    2. Ajoutez le code XML au fichier your_path/config_file.xml et spécifiez l'URL du moteur de recherche tiers dans la balise <policy>.
      Par exemple, pour Yahoo News, la balise de stratégie se présente comme suit :
      <policy url="http://news.search.yahoo.com/news/*" acf="none">
          <actions>
              <method>GET</method>
              <method>HEAD</method>
          </actions>
          <mime-types>
              <mime-type>text/xml*</mime-type>
              <mime-type>application/xml*</mime-type>
              <mime-type>application/atom+xml*</mime-type>
              <mime-type>application/rss+xml*</mime-type>
          </mime-types>
      </policy>
    3. Mettez à jour le fichier de configuration de proxy en exécutant la tâche update-outbound-http-connection-config.
      For example, ConfigEngine.sh update-outbound-http-connection-config -DConfigFileName=your_path/config_file.xml -DApplicationScopeRef=PA_Search_Center where your_path/config_file.xml is the absolute path name of the proxy configuration file of the Search Center portlet.
      Pour plus d'informations sur la tâche update-outbound-http-connection-config, voir Comment mettre à jour le profil de configuration d'une connexion HTTP sortante
  7. Arrêtez et redémarrez l'application Centre de recherche.
    Connectez-vous à WebSphere® Integrated Solutions Console et cliquez sur Applications > Applications d'entreprise WebSphere. Vous pouvez ensuite arrêter et redémarrer l'application Centre de recherche.
    Remarque : Si l'URL du moteur de recherche tiers utilise HTTPS ou si le moteur de recherche tiers redirige les requêtes HTTP vers HTTPS, la communication entre le portail et le moteur de recherche tiers est sécurisée avec SSL/TLS. Pour ouvrir une connexion sécurisée, le portail doit récupérer le certificat SSL du moteur de recherche tiers et le stocker dans son magasin de clés de confiance. Reportez-vous à Récupération des signataires à partir d'un port SSL distant pour obtenir des instructions.

Que faire ensuite

Pour ajouter des résultats provenant de moteurs de recherche externes supplémentaires, clonez et configurez des portlets Résultats de recherches externes supplémentaires, ajoutez-les à la page Centre de recherche et mettez à jour le fichier proxy-config.xml en conséquence.