自分のサイトで Solr を検索エンジンとして使用していますが、同義語の一致以外はすべてうまくいっています。
私の synonym.txt ファイルは次のようになります。
uk => united kingdom,england,scotland,wales
これは、「英国」とマークされた結果を返す場合に機能しますが、その他の場合は機能しません。順序を逆にすると、「英国」の結果は返されません。
私のフィールドタイプは次のようになります。
<fieldType name="text" class="solr.TextField" omitNorms="false">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SynonymFilterFactory" tokenizerFactory="solr.KeywordTokenizerFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false"/>
</analyzer>
</fieldType>
私はsolrにかなり慣れていないので、どんな助けも大歓迎です!