Many websites allow a user to search for text within the website using an internal search feature. Drupal core provides this with the Search module, which allows you to do a keyword search on content (text in nodes, taxonomy, etc.) and users (by name or email). In addition to having a search box to enter a keyword query into, you also have a results page, which lists the content or users that match, or a "no results" message if none match.
A search engine works by indexing your site so that it knows all of the words available and what content or users they are associated with. This needs to be updated periodically to remain accurate. Updating is most often achieved using a server utility called cron.
If Drupal core's search is not sufficient for your needs, there are many search engines you can integrate. The most popular choice by far in Drupal is to use Apache Solr in combination with the contributed Search API module. We recommend using Search API instead of the core Search module in most cases.
- Search for a keyword on the site.
- Change the relative importance of various factors to make some results appear higher than others.
- Configure how your content is indexed.
This is a stable core feature without significant changes since 8.0.
We are still filling out our Drupal 8 library and this page will be updated with new tutorials as they are created. The following tutorials are for Drupal 7, but still relevant for Drupal 8 users.