全局搜索配置 |
SuperMap iPortal 提供了全局搜索功能,全局搜索可以对门户的所有资源进行检索,而无需在每一资源分类中逐一检索。iPortal 的全局搜索功能基于 Elasticsearch 分布式搜索引擎实现,有关全局搜索功能的使用,请参见:全局搜索。
SuperMap iPortal 内置的全局搜索是指 iPortal 产品包中自带的全局搜索。启动 iPortal 服务时,已默认启用了内置全局搜索,无需做额外配置。该配置方式的优点是:操作简单,针对小型的门户网站应用,可选择内置的全局搜索。
作为 iPortal 门户的管理员,如果您部署了自己的 Elasticsearch 搜索服务器,不想使用 iPortal 中自带的 Elasticsearch,或者希望更改 iPortal 中 Elasticsearch 的默认配置,可以通过以下两个步骤进行配置:
<bean id="esSetting" class="com.supermap.iportal.search.commontypes.ESSetting">
<property name="address" value="127.0.0.1"></property>
<property name="port" value="9300"></property>
<property name="clusterName" value="myapplication"></property>
<!-- <property name="nodeName" value="node1"></property> -->
<property name="indexName" value="portalsearch"></property>
<property name="numberOfShards" value="5"></property>
<property name="numberOfReplicas" value="0"></property>
</bean>
如果您仅想更改 iPortal 内置 ES 的默认配置(如端口号、集群名、节点名等),而非使用自己部署的 ES 服务器, 则在修改完 search-beans.xml 文件后,还需同步修改 %SuperMap iPortal_HOME%/bin/startes.bat(sh) 文件中对应配置项,保持两者一致,以 startes.bat 为例,具体如下:
@echo off
set "CUR_DIR_TEMP=%~dp0"
set JAVA_HOME=%CUR_DIR_TEMP%\..\support\jre
set PATH=%JAVA_HOME%\bin;%path%
rem start elasticsearch
if not ""%ESDATADIR%""=="""" goto okdatadir
set ESDATADIR=%CUR_DIR_TEMP%\..\data\elasticsearch\data
:okdatadir
if not ""%ESLOGSDIR%""=="""" goto oklogdir
set ESLOGSDIR=%CUR_DIR_TEMP%\..\data\elasticsearch\logs
:oklogdir
set ESNODENAME=node1
set ESClUSTERNAME=myapplication
set ESHTTPPORT=9210
set ESTCPPORT=9310
"%CUR_DIR_TEMP%\..\database\elasticsearch\bin\elasticsearch.bat" -Epath.data=%ESDATADIR% -Epath.logs=%ESLOGSDIR% -Ecluster.name=%ESClUSTERNAME% -Enode.name=%ESNODENAME% -Ehttp.port=%ESHTTPPORT% -Etransport.tcp.port=%ESTCPPORT% -Enetwork.host=127.0.0.1 -p espid
<IportalConfig>
...
<modulesConfig>
<searchModuleConfig class="com.supermap.server.config.BuildinSearchConfig">
<enable>true</enable>
<reindexAllResources>true</reindexAllResources>
<startElasticSearch>true</startElasticSearch>
<port>8192</port>
</searchModuleConfig>
</modulesConfig>
...
</IportalConfig>