You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Chimo 7d832b7ff4
Handle /actions/apisearchjson.php searches
1 年之前
actions Fix encoding issues with accented characters 1 年之前
classes Initial multi-field search page 2 年之前
lib Handle /actions/apisearchjson.php searches 1 年之前
scripts import-notice: Fix command-line flags 2 年之前
.gitignore First commit 2 年之前
ElasticSearchPlugin.php Initial multi-field search page 2 年之前 Update README 2 年之前
composer.json First commit 2 年之前
composer.lock First commit 2 年之前

Elasticsearch Backend for GNU social


  1. Navigate to your /local/plugins directory (create it if it doesn't exist)
  2. git clone ElasticSearch
  3. Run composer install in the ElasticSearch folder to install the dependencies


Tell /config.php to use it with (replace with the address/port of your elasticsearch backend server):

    $config['elasticsearch']['hosts'] = [ '' ];
    $config['elasticsearch']['index_name'] = 'gnusocial';


You can use the Lucene query syntax when searching.

Searching Notices

Supported fields:

  • text: Filters by notice text (default field)
  • author: Notice author (in webfinger format:
  • type: Notice type (ex: post, share, like, etc)
  • created: Date the notice was created

The /search/notice page searches notice text by default. You can filter by notice author with the author field parameter.

For example, the following input will find all notices containing the word “social”: social

The following input will find all notices containing the word “social” authored by username “gnu”: author:gnu social

Searching Profiles

Supported fields:

  • nickname (default field)
  • fullname
  • bio
  • location
  • created
  • modified

The /search/people page searches profile nicknames by default. You can fiter by the other fields above.