Here is a really simple way to handle synonyms (or extra keywords) using Search API out of the box with a database server and no custom code involved. Use case: we want to do a full text search based on synonyms that does not appear on the frontend. These ones should be set from the Tags vocabulary. The method should be flexible regarding translations, available for content editors and easily generalizable.
A walkthrough to join the dots between two posts about setting up Lando for Drupal and Solr for Drupal with Search API, and also a good opportunity to cover all the steps to spin up an evaluation or development environment for this setup. Lando comes with the great benefit for a team to share the server configuration alongside the project, so we have a predictable environment to deploy in production and do not add configuration maintenance overhead on the team, especially in the case of more advanced setup like Solr, Varnish, decoupled setup, ...
This setup is intended for production use on a dedicated server (VPS, ...). For development purpose it should be preferable to use Drupal VM, it comes with a default Solr configuration that can be enabled via the config.yml file. If you are using Drupal VM and want to configure Search API for Solr, you can jump to point 4.