Configure full-text search client
Describes how to set up full-text search client.
Note
The Full-text Search Service applies to Optimizely Content Management System (CMS 11) and is not supported on Optimizely Digital Experience Platform (DXP) and other cloud service deployments. It is a legacy feature that will be removed in future versions.
This section is not supported for ASP.NET Core-based applications.
The Optimizely full-text search client (FTS Client) configuration is in the EPiServer.Search
section of web.config
and is accessible through the EPiServer.Search.SearchSettings.Config
property. Most of the values have defaults and are not required. The following tables show section and element names and their defaults.
SearchSection
Attribute | Type | Default Value | Comment |
---|---|---|---|
active | bool | Required, no default value | Indicates whether the Client makes a request to the configured indexing service.The SearchHandler throws an exception if a request occurs. |
dequeuePageSize | int | 50 | Page size to use when dequeueing queue items. How many items that fit into one feed. |
dynamicDataStoreName | string | IndexRequestQueueDataStore | Name of the Dynamic Data Store used by the FTS client. |
htmlStripDisplayText | bool | true | Indicates whether the DisplayText field is stripped of HTML tags. |
htmlStripMetadata | bool | true | Indicates whether the MetaData field is stripped of HTML tags. |
htmlStripTitle | bool | true | Indicates whether the Title field is stripped of HTML tags. |
indexingServiceFieldNameAcl | string | EPISERVER_SEARCH_ACL | Name for the ACL field in the indexing service. |
indexingServiceFieldNameAuthor | string | EPISERVER_SEARCH_AUTHORS | Name for the Authors field in the indexing service. |
indexingServiceFieldNameCategories | string | EPISERVER_SEARCH_CATEGORIES | Name for the Categories field in the indexing service. |
indexingServiceFieldNameCreated | string | EPISERVER_SEARCH_CREATED | Name for the Created field in the indexing service. |
indexingServiceFieldNameCulture | string | EPISERVER_SEARCH_CULTURE | Name for the Culture field in the indexing service. |
indexingServiceFieldNameDefault | string | EPISERVER_SEARCH_DEFAULT | Name for the default searchable content field in the indexing service. |
indexingServiceFieldNameDisplayText | string | EPISERVER_SEARCH_DISPLAYTEXT | Name for the DisplayText field in the indexing service. |
indexingServiceFieldNameId | string | EPISERVER_SEARCH_ID | Name for the Id field in the indexing service. |
indexingServiceFieldNameItemStatus | string | EPISERVER_SEARCH_ITEMSTATUS | Name for the indexing service field name ItemStatus. |
indexingServiceFieldNameModified | string | EPISERVER_SEARCH_MODIFIED | Name for the Modified field in the indexing service. |
indexingServiceFieldNameTitle | string | EPISERVER_SEARCH_TITLE | Name for the Title field in the indexing service. |
indexingServiceFieldNameType | string | EPISERVER_SEARCH_TYPE | Name for the Type field in the indexing service. |
indexingServiceFieldNameVirtualPath | string | EPISERVER_SEARCH_VIRTUALPATH | Name for the VirtualPath field in the indexing service. |
maxHitsFromIndexingService | int | 500 | Number of total hits to be returned by the indexing service for each search result request. |
namedIndexesUriTemplate | string | /namedindexes/ ?accesskey={accesskey} | Template to use when getting the configured named indexes for the index. Items within {} are replaced during the request. |
queueFlushInterval | int | 30 | Interval (in seconds) to flush the queue. Overrides the queuelimit. |
resetHttpMethod | string | POST | HTTP method for Reset index requests to the indexing service. |
resetUriTemplate | string | /reset/ ?namedindex={namedindex} &accesskey={accesskey} | Template to use when resetting the index. Items within {} are replaced during the request. |
queueLimit | int | 10 | Number of items allowed in the queue before flushing the queue and sending the request feed to the indexing service. |
removeProcessedQueueItems | bool | true | Indicates whether the items in the queue are removed after they are sent to indexing service. |
resetUriTemplate | string | /reset/ ?namedindex={namedindex} &accesskey={accesskey} | Template to use when resetting the index. Items within {} are replaced during the request. |
searchUriTemplate | string | /search/ ?q={q} &namedindexes={namedindexes} &offset={offset} &limit={limit} &format=xml &accesskey={accesskey} | Template for search requests to the indexing service. The Http method is always GET. Required replaceables: {q}, {namedIndexes}. |
syndicationFeedAttributeNameTotalHits | string | TotalHits | Name of the attribute extension TotalHits which is added to the feed for the IndexResponseItem. |
syndicationFeedAttributeNameVersion | string | Version | Name for the syndication feed attribute extension Version. |
syndicationItemAttributeNameAutoUpdateVirtualPath | string | AutoUpdateVirtualPath | Name of the attribute extension AutoUpdateVirtualPath which is added to the IndexRequestItem. |
syndicationItemAttributeNameBoostFactor | string | BoostFactor | Name of the attribute extension BoostFactor which is added to the IndexItemBase. |
syndicationItemAttributeNameCulture | string | Culture | Name of the attribute extension Culture which is added to the IndexItemBase. |
syndicationItemAttributeNameDataUri | string | DataUri | Name of the attribute extension DataUri which is added to the IndexItemBase. |
syndicationItemAttributeNameIndexAction | string | IndexAction | Name of the attribute extension IndexAction which is added to the IndexRequestItem. |
syndicationItemAttributeNameItemStatus | string | ItemStatus | Name for the syndication item attribute extension ItemStatus. |
syndicationItemAttributeNameNamedIndex | string | NamedIndex | Name of the attribute extension NamedIndex which is added to the IndexItemBase. |
syndicationItemAttributeNamePublicationEnd | string | PublicationEnd | Name for the syndication feed item attribute extension PublicationEnd. |
syndicationItemAttributeNamePublicationStart | string | PublicationStart | Name for the syndication feed item attribute extension PublicationStart. |
syndicationItemAttributeNameReferenceId | string | ReferenceId | Name of the attribute extension ReferenceId which is added to the IndexItemBase. |
syndicationItemAttributeNameScore | string | Score | Name of the attribute extension Score which is added to the IndexResponseItem. |
syndicationItemAttributeNameType | string | Type | Name of the attribute extension Type which is added to the IndexItemBase. |
syndicationItemAttributeNameVersion | string | Version | Name of the attribute extension Version which is added to the IndexItemBase. |
syndicationItemElementNameAcl | string | ACL | Name of the attribute extension ACL which is added to the IndexItemBase. |
syndicationItemElementNameMetaData | string | Metadata | Name of the attribute extension MetaData which is added to the IndexItemBase. |
syndicationItemElementNameVirtualPath | string | VirtualPath | Name of the attribute extension VirtualPath which is added to the IndexItemBase. |
updateUriTemplate | string | /update/ ?accesskey={accesskey} | Template to use when updating the index. Items within {} are replaced during the request. |
useIndexingServicePaging | bool | true | Indicates whether the indexing service is supposed to return paged result sets. Set this to false if any client filter is plugged in so that maximum items are returned from indexing service and the paging occurs client-side on filtered results. |
xmlQualifiedNamespace | string | EPiServer.Search.IndexingService | Namespace to use for the feeds and the feed items. |
Element | Type | Comment |
---|---|---|
namedIndexingServices | NamedIndexingServicesElement | Named indexing services element that configures the available service endpoints. |
searchResultFilter | SearchResultFilterElement | Search result filter element that configures the filter provider to use after retrieving search results from service |
SearchResultFilter element
The SearchResultsFilter
 element is nested within the EPiServer.Search
section. The element has only one attribute but may contain a collection of providers to customize the filtering of search results. Add providers to the providers
collection using the standard ASP.NET provider syntax.
Attribute | Type | Default Value | Comment |
---|---|---|---|
defaultInclude | bool | false | Indicates whether unhandled IndexResponseItems are in the search results by default. |
Element | Type | Comment |
---|---|---|
providers | ProviderSettingsCollection | Collection of SearchResultFilterProviders for filtering search results. |
NamedIndexingServices element
The namedIndexingServices
element is nested within the EPiServer.Search
section. The element itself only has one attribute but must also contain a collection of namedIndexingService
elements with at least one entry.
Attribute | Type | Default Value | Comment |
---|---|---|---|
defaultService | string | Required, no default value. | Name of the default service to use. |
Element | Type | Comment |
---|---|---|
services | NamedIndexingServiceCollection | Contains the available services. When updating or searching the index, you can pass the current service as Name. |
NamedIndexingService element
The namedIndexingService
element contains the information the FTS client needs to call a specific FTS service.
Attribute | Type | Default Value | Comment |
---|---|---|---|
accessKey | string | Required, no default value | Access key for this named indexing service. Configure this key on the service side. |
baseUri | Uri | Required, no default value | Base URI for this named indexing service. |
certificateAllowUntrusted | bool | false | Indicates whether the client accepts communication with a FTS service that uses an untrusted SLL certificate. |
name | Name | Requiredkey attribute, no default value | Name of the indexing service. |
Element | Type | Comment |
---|---|---|
certificate | CertificateReferenceElement | Settings for certificate validation when connecting to the service. |
Updated 7 months ago