1. A method implemented on at least one machine having at least one processor, storage, and a communication platform connected to a network for indexing one or more items of content, the method comprising: extracting, by the at least one processor, one or more items of text from a given item of content; tokenizing, by the at least one processor, the one or more extracted items of text into one or more concepts based on past queries submitted by one or more users; identifying one or more related concepts associated with the one or more concepts; obtaining, by the at least one processor, a support score for the individual one or more concepts based on whether one or more of the one or more concepts appear in the given item of content and/or whether one or more of the one or more related concepts appear in the given item of content; and generating an index, the index comprising the given item of content associated with the one or more concepts and corresponding support scores for the individual one or more concepts; receiving a search query; identifying, based on the index, a set of items of content responsive to the search query, wherein individual items of content in the set are indexed with one or more concepts that are related to the search query; obtaining, for each individual item of content in the set, a sum of support scores associated with the one or more concepts that are related to the search query; and providing the set, wherein the items of content in the set are sorted based on the sum of support scores.