Configuring the InSite Search Index
In Ingeniux CMS 9.0, InSite Search comes installed by default. Configuration options are located in the Search.config file at the root of a DSS site.
To configure the InSite Search index:
- Navigate to the
Search.config
file at the root of your DSS site.<?xml version="1.0"?> <configuration> <configSections> <section name="Search" type="Ingeniux.Search.Configuration.IndexingConfiguration, Ingeniux.Search"/> </configSections> <Search indexLocation="App_Data\LuceneIndex" indexingEnabled="true" queryMaxClauses="1024"> <Hiliter startTag="<strong>" endTag="</strong>"/> <Settings> <add name="defaultIndexingAnalyzer" value="Ingeniux.Search.Analyzers.StemmingIndexingAnalyzer, Ingeniux.Search" /> <add name="defaultQueryAnalyzer" value="Ingeniux.Search.Analyzers.StemmingQueryAnalyzer, Ingeniux.Search" /> </Settings> <IndexingSources> <add name="CMSPublishedContent" type="Ingeniux.Runtime.Search.DssContentSearchSource" settingsFile="C:\dss\pub\settings\SearchSource.config"/> <add name="SearchNav" type="Ingeniux.Runtime.Search.DssContentSearchSource" settingsFile="C:\dss\pub\settings\SearchSource.config"/> <add name="KeyMatch" type="Ingeniux.Search.KeyMatchSearchDocumentSource" settingsFile="App_Data\KeymatchSource.config"/> <add name="IntranetDirectory" type="Cartella.Search.LdapSearchSourceSource" settingsFile="App_Data\ldapSearchSource.config"/> </IndexingSources> <SearchProfiles> <add name="Profile1"> <Sources> <add name="CMSPublishedContent" /> <add name="SearchNav" /> <add name="KeyMatch" /> </Sources> </add> </SearchProfiles> </Search> </configuration>
- Configure the
Search.config
file:- Ensure that the
indexLocation
attribute within the Search element is a valid path within your DSS directory structure. This path is the physical location where the index is stored. - Set the
indexingEnabled
attribute within the Search element totrue
.Note: In some cases, such as load-balanced environments, you may only want one instance performing the indexing.
- The
IndexingSources
element includes all sources that are indexed. The InSite Search library can index from multiple sources, and each source has its own configuration file. At least one source must be listed. For example, included by default is a DSS search source type with the value ofIngeniux.Runtime.Search.DSSContentSearchSource
,Cartella.Search.CartellaSearchSource
, andCartella.Search.LdapSearchSourceSource
. Each of these index sources include an example of a path to the source's configuration file, located in the CMS site's publishing target folder.Replace the example
settingsFile
value with one that corresponds to your system path.Note: In turn, each search source has its own configuration file.
- Ensure that the
- Configure search sources:
- Navigate to the appropriate
searchSource.config
file referenced bySearch.config
. A CMS search source is located at[siteRoot]\App_Data\[pubTarget]\Settings\SearchSource.config
. The Cartella search source is located at[siteRoot]\Cartella.config
. - Open a
SearchSource.config
file in an editor.<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="Search" type="Ingeniux.Search.Configuration.IndexingSourceConfig, Ingeniux.Search" /> </configSections> <Search> <Settings> <!-- The following are set in Administrator > InSite Search Configuration > Settings tab > Search Settings: --> <add name="PagesBatchSize" value="2500" /> <add name="DocumentsBatchSize" value="5000" /> <!-- The following are set in Administrator > InSite Search Configuration > Assets: (Default documentLocations value is null.) --> <add name="documentLocations" value="documents/pdf" /> <!-- The following are set in Administrator > InSite Search Configuration > Settings tab > Custom Settings: --> <add name="documentComponents" value="BinaryDocument" /> <add name="EnabledDepthBoostFactor" value="false" /> </Settings> <DefaultFields> <!-- The following are set in Administrator > InSite Search Configuration > Fields tab > Field Exclusions: --> <add name="Banner" includeInSearchResults="false" boost="1" /> <!-- The following are set in Administrator > InSite Search Configuration > Fields tab > Field Boosts: --> <add name="BodyCopy" includeInSearchResults="true" boost="1" /> </DefaultFields> <Types> <!-- The following are set in Administrator > InSite Search Configuration > Schemas tab > Schema Exclusions: --> <add type="SearchResultPage" friendlyName="Search Result Page" includeInGlobalSearch="false" /> <!-- The following are set in Administrator > InSite Search Configuration > Schemas tab > Schema Boosts and Fields: --> <add type="DetailPage" friendlyName="Detail Page" includeInGlobalSearch="true" boost="1"> <Fields> <!-- The following are set in Administrator > InSite Search Configuration > Schemas tab > [Schema Type] > Add Field Exclusion option: --> <add type="SEO" includeInSearchResults="false" boost="1" /> <!-- The following are set in Administrator > InSite Search Configuration > Schemas tab > [Schema Type] > Add Field Boost option: --> <add type="DescriptiveTitle" includeInSearchResults="true" boost="1.2" /> </Fields> </add> </Types> <Assets> <add type="xslt" friendlyName="XSLT Stylesheet" includeInGlobalSearch="false" /> <add type="Document" friendlyName="Document" includeInGlobalSearch="true"> <Fields> <add type="Language" includeInSearchResults="false" boost="1" /> <add type="FileFormat" includeInSearchResults="true" boost="3" /> </Fields> </add> </Assets> </Search> </configuration>
-
The
documentComponents
/BinaryDocument
name/value pair specifies that binary document components will be indexed. It also attaches the document asset as part of the component's searchable text.To index binary documents within a particular search type, ensure that the
BinaryDocument
/documentComponents
name/value pair has been added to the appropriateadd
element. -
Page names are indexed. By default,
name
is added as a default field on publish.includeInSearchResults
is set totrue
by default, with a boost value of 2. A field's boost value affects how search results display. You can change the boost values for types.
Note: If you need to roll back to this file's default settings, perform either an incremental or a full publish. Also, you must perform a publish to propogate your newly saved settings.
- Navigate to the appropriate
- Set up document indexing:
- To enable indexing of PDFs if applicable, refer to Adobe Reader iFilter. Download the appropriate executable for your operating system:
- To enable indexing of Microsoft Word documents if applicable, refer to Microsoft Office iFilter package:
- To download the Microsoft 2010 filters.
Note: Before installation, read the installation instructions on the Microsoft site.
- After installing the initial filters, install the Filter Pack SP2 update.
- To download the Microsoft 2010 filters.
- Make sure to install these packages on the DSS.
- Rebuild the search index.
Search Index Summary
Files should populate the folder in the path that you provided in the attribute value of IndexLocation
. Searches performed during or prior to index setup return no results. Depending on site size and hardware, it could take a few minutes for the index to complete. In most cases, it takes less time. While the index is building, the same queries could return different results as more data is added to the index.
Note: Each publish clears the SearchSource.config
file. Developers may need to create a custom hook to restore the configuration file.