This module provides a Apache Solr backend for the Search API module.
It provides a great performance, and is suitable even for use on large commercial websites and supports facets and multi-index searches. Multilingual content is handled correctly by design.
Solr and module versions compatibility matrix for Drupal 7, 9 and 10
Search API Solr 7.x-1.x | Search API Solr 4.3.x(2) | Search API Solr NLP 1.1.x(2) | |
Solr 3.6 (EOL) | x | x(3) | x(3) |
Solr >=4.5 (EOL) | x | x(3) | x(3) |
Solr 5 (EOL) | x | x(3) | x(3) |
Solr <=6.3 (EOL) | x | x(4) | x(4) |
Solr >=6.4 (EOL) | x | x | x |
Solr 7 (EOL) | x(1) | x | x |
Solr 8 | x | x | |
Solr 9 | x | (x)(5) | |
Solr Cloud 6.6 (EOL) | x | x | |
Solr Cloud 7(EOL) | x | x | |
Solr Cloud 8 | x | x | |
Solr Cloud 9 | x | -(5) | |
Natural language processing (NLP) | x | ||
Part-of-speech tagging (POS) | x | ||
PHP 5.6 (EOL) | |||
PHP 7.0 (EOL) | x | ||
PHP 7.1 (EOL) | x | ||
PHP 7.2 (EOL) | x | ||
PHP 7.3 (EOL) | x | ||
PHP 7.4 (EOL) | x | x | x |
PHP 8.0 | x | x | |
PHP 8.1 | x | x | |
PHP 8.2 | x | x |
(1) running in Solr 6 backward compatibility mode
(2) for Drupal 9 and 10
(3) supported via the search_api_solr_legacy sub-module
(4) supported via the search_api_solr_legacy sub-module and a Solr 5.x config-set
According to https://lucene.apache.org/solr/downloads.html any Solr version before 7.7 reached "End of Life".
4.3.x
The 4.3 release of this module is works for Drupal 9 and 10! And it supports a wide range of Solr versions from 3.6 to 9.
Earlier versions provided dedicated backends for special puproses, like the multilingual or the "any schema" backends. In 4.3 there's only one unified backend for all purposes. That reduced the code base and improved the performance.
Important: You have to use composer to install the module! Otherwise the dependencies won't be resolved and the autoloader isn't configured correctly.
Ensure to read README.md before you start!
7.x-1.x version
The Drupal 7 version of this module attempts to support all Solr versions starting at Solr 3.5, though you should be aware that all versions before Solr 7.7 have reached end-of-life (EOL) already and using them is strongly discouraged. Solr 7 support is currently only working by using the Lucene 6 compatibility mode (luceneMatchVersion=6.0
), though. There is no support for Solr 8 as of yet.
The 7.x-1x branch is considered feature complete and only gets critical bug or security fixes.
There are open "issues" which are in fact new features or configuration options.
Such issues are only handled in the 4.x branches.
Support
Support will be provided via
4.3.x Patches and Issues Workflow
Our test suite includes integration tests that require a real Solr server. This
requirement can't be provided by the drupal.org test infrastructure.
Therefore we leverage travis and github actions for our tests and had to establish a more complex workflow:
- open an issue on drupal.org as usual
- upload the patch for being reviewed to that issue on drupal.org as usual
- fork https://github.com/mkalkbrenner/search_api_solr
- apply your patch and file a PR on github
- add a link to the github PR to the drupal.org issue
The PR on github will automatically tested by travis or github actions and the test results will
be reflected in the PR conversation.
Common Requirements
Requirements are:
- The Search API module, of course.
- An Apache Solr server which can be individually configured (or has a configuration compatible with this module).
If you do not want to or cannot install your own Solr server, there are a number of web Solr hosts which are more or less compatible with the Search API (either because they have it as an option, or they allow uploading custom configurations). Some of them are:
- Hosted Apache Solr
- Websolr
- gotosolr
- Hosted Solr
- Opensolr
- NodeFactor
- Acquia Search
- Wodby
- SearchStax
- AltaGrade (full-stack web hosting, Cloud and Dedicated offers include Solr)
(This is a free information service, We do not endorse any of these products. If you want your Solr hosting service to be listed here, please contact drunken monkey or mkalkbrenner.)
Some of the Solr hosting services above could be leveraged using the default connectors this module provides. But in most cases only a subset of the entire Solr API is accessible so it might lead to error messages or warnings, for example in the Drupal status report page. Therefore, some provide their own connector plugins for Search API Solr, especially if they use different authentication methods that aren't support out-of-the-box or for a deeper or easier integration in general:
Local Development
There're different solutions for local Drupal development and how to integrate Solr with it.
The DDEV add-on is maintained by mkalkbrenner and well tested: https://github.com/mkalkbrenner/ddev-solr
Project information
- Module categories: Site Search, Integrations
- Ecosystem: Search API, Search API Solr
- 53,417 sites report using this module
- Created by drunken monkey on , updated
- Drupal 10 is here!
Drupal 10.0 and 10.1 are supported.
- Stable releases for this project are covered by the security advisory policy.
Look for the shield icon below.
Releases
Supports Solr versions from 3.6 to 9.x
Development version: 4.x-dev updated 7 Feb 2024 at 08:32 UTC
Supports Solr versions from 3.6 to 8
Development version: 4.x-dev updated 7 Feb 2024 at 08:32 UTC
Search API Solr Search release 1.16 for Drupal 7
Development version: 7.x-1.x-dev updated 2 Nov 2023 at 10:56 UTC