WSS v3 SharePoint Search Issues and Solutions

WSS Search and MOSS search are similar on the surface, but have major differences in the way they work. This page will be focused on WSS search issues, but some of what is listed here is transferable to MOSS.

The message displayed when you attempt to search for a known item should be the first clue as to where to look for a solution. Let's review a few of the most common WSS Search issues and their solutions.

Your search cannot be completed because this site is not assigned to an indexer. Contact your administrator for more information.

Cause:

Typically this means that either the search service has stopped, or the content database has not been assigned an index server.

Resolution:

  1. Open Central administration on the server having the issue.
  2. Navigate to Operations > Services on Server
  3. Verify that Windows SharePoint Services Search has a Status of Started.
    If the Search Service is stopped, see below for Restarting the Search Service, if it is started, proceed to the next step.
  4. Navigate to Application Management > Content Databases > Select the content database of the site having search issues.
  5. Under the Search Server section, assign a search server to the database.
    Windows SharePoint Services Search Help

No results matching your search were found.

Cause:

There are a number of issues which can cause no results to be found. Check the following resolutions then proceed to the analyzing the event viewer messages.

Resolution 1:

  1. Navigate to Site Actions > Site Settings > Search visibility
  2. Verify that Allow this web to appear in search results is set to Yes

Resolution 2:

  1. Navigate to Application Management > Authentication Providers
  2. Select the Web Application with the search issue and click on the Default zone
  3. Verify that Basic Authentication is not selected. If Basic Authentication is selected, then go to the heading Enableing Search on Sites using Basic Authentication.

Application Log Errors and Troubleshooting

Search is usually very good about logging event viewer messages in the application log. This is usually the first place you should check when encountering a problem with search. Below are a few common errors that we see and what the typical Resolution for that error is.

Event ID 2424
Event Type: Error
Event Source: Windows SharePoint Services 3 Search
Event Category: Gatherer
Description: The update cannot be started because the content sources cannot be accessed. Fix the errors and try the update again.

Cause:

Very often this is due to the server being unable to resolve the URL being crawled. This may be due to a networking issue, or a DNS issue.

Resolution:

  1. Modify the hosts file to resolve the site URL.
    Edit C:\WINDOWS\system32\drivers\etc\hosts.

  2. Add a line at the end of the file like the following:
    WANIP    SHAREPOINT SITE NAME

    Example:
    172.29.2.16   test.sharepointspace.com

  3. Rerun the crawl and check the event viewer for further errors

C:\Program Files\Common Files\Microsoft® Shared\web server extensions\12\BIN\stsadm -o spsearch -action fullcrawlstop

C:\Program Files\Common Files\Microsoft® Shared\web server extensions\12\BIN\stsadm -o spsearch -action fullcrawlstart


Event ID 2436
Event Type: Warning
Event Source: Windows SharePoint Services 3 Search
Event Category: Gatherer

Cause:

The crawler is unable to gain access to the content database.

Resolution 1:

Disable the loopback as described in the following Blog:

http://stabilissolutions.blogspot.com/2009/02/sharepoint-2007-search-access-denied.html

Resolution 2:

Reset the rights of the crawler account to the content database.

  1. Open SQL Management Studio and connect to the server hosting the content database
  2. Expand Security > Logins
  3. Find the user account being used by the search service to access content and double click it
  4. Choose Server roles
  5. Note all permissions that are set, then remove them all and click ok.
  6. Open the user again and re-add the permissions

If all else fails resetting the search database and index will resolve any corruption that may be preventing search from properly presenting results.

Resetting the Index Files

  1. Navigate to C:\Program Files\Common Files\Microsoft® Shared\web server extensions\12\Data\Applications\SOMEGUID\Projects\Search\Indexer\CiFiles
  2. Delete the files in that folder

Restarting the Search Service

  1. Open Central Administration
  2. Navigate to Operations > Services on server
  3. Stop the Windows SharePoint Services Search service
  4. Start the Windows SharePoint Services Search service
  5. Enter the password for the Service Account and Content Access Account. The latter must be an account with access to the content you are attempting to crawl.
  6. Rename the Database name with a number after the name, or _new to designate a new Database to be created
  7. Select Start
  8. Navigate to Application Management > Content Databases > Select the content database
  9. Under the Search Server section, assign a search server to the database
    WSS Search Support
  10. Repeat steps 10 and 11 for all content databases on this server

Authentication and Search Issues

Another fairly common issue is that enabling basic authentication will prevent search from functioning. To resolve this you must extend the web application to a zone not using basic authentication.

Enabling Search on Sites using Basic Authentication

  1. Open IIS and change the IP address settings for the application that will be using basic authentication to the external IP address. Make sure this is done for the host header as well.
  2. Open Central Administration -> Application Management -> Authentication Providers
  3. Select the web application that will need to use basic authentication and click on the default zone (there should only be one)
  4. Make sure that Integrated Windows authentication and NTLM is selected
  5. Go to Application Management and select Create or extent Web application
  6. Select Extend an existing Web application
  7. Select the web application that will be using basic authentication and fill out the information adding search into the description.
  8. Go to the Application Management, select the Authentication Providers and the Default zone. Uncheck the Integrated Windows authentication and select Basic authentication.
  9. Open IIS and open the properties for the search application just created and change the IP address to the internal IP address.
  10. Browse to the external application in IIS, expand the _layouts folder and open the properties for the images directory. Make sure that it's using the same application pool as the main application and that Basic authentication is checked.
  11. Add a host file entry for the site to point to the internal IP address.

Also see the following blog article

http://sharepointmadeeasy.blogspot.com/2008/01/wss-3.html