One option would be to use the copy_to mapping option to copy all those other fields to a single field called "everything_else" and just add that to your list of fields in the above example.
This has other benefits - searching across many fields using their own independent indexes often produces counterintuitive results. Lucene likes to pick the bizarrest context for a search term because it likes rarity. Searching for books on "web development" for example would rank the document "author:gary web" first because of the typo for the common name Webb. You can see that in this example:
The solution is to reach for the special cross_fields scoring strategy or perhaps more simply to reindex then search the everything_else copy_to field. This blends the stats from author names, titles etc and avoids some of these odd ranking problems.
It may work with these 4 example docs but the more docs you add the rarer that author:web term becomes. The rarer it becomes the higher it scores and at some point you may see that the typo author:web ranks higher than your attempts to boost titles and descriptions.
Your boosts and IDF (term rarity) are both factors in ranking.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.