To enable Smart search indexing for all websites in the system:
- Open the Settings application.
- Select the System -> Search category.
- Check Enable smart search indexing.
- Click Save.
Note: Your application must have the write permission for the ~/App_Data folder on the server's file system. This folder stores the search index files, so the system cannot create and update indexes without the required permissions.
See Disk permission problems to learn how to grant the write permission for the folder.
Scheduling the search indexing process
By default, the smart search creates and executes indexing tasks immediately whenever content covered by a search index is created, modified or deleted.
You can disable automatic running of indexing tasks upon creation by adding the CMSProcessSearchTasksByScheduler key to the /configuration/appSettings section of your application's web.config file:
<add key="CMSProcessSearchTasksByScheduler" value="true" />
When you set this key to true:
- The system only logs the search indexing tasks into the database without running them. You need to process the tasks periodically, for example using the Execute search tasks scheduled task (runs every 4 hours by default).
- You cannot manually Rebuild indexes unless you also run the process that executes the indexing tasks.
You can find a list of all indexing tasks that are waiting to be processed in Smart search -> Tasks. Here you can:
- Look for information if you encounter problems with new content not being indexed correctly
- Delete ( ) tasks from the indexing queue to stop unnecessary or problematic indexing
See also: Monitoring search indexing tasks
Executing search tasks via the scheduler on a web farm
If your environment runs in a web farm, you need to configure the Execute search tasks scheduled task to be executed on each of the web farm servers individually. See Configuring scheduled tasks to be executed on every server of a web farm.