I have a site collection with multiple subsites. I am not using the root level site at all, only the subsites. I would like each subsite to have their search results only within the subsite. What are the exact steps on how to do this. I have read many blogs and have failed to accomplish this task. The Search Center has been created but when I search from the subsites, it always returns results from the entire site collection.
Maintainging a search scope for each sub site is not something I can recommend - too much maintenance here. Instead, I see a few other and good options OOTB for narrowing the search results to a sub site:
Configure the small search box from Site settings -> Search settings to default to the contexual scope. The trick here is to get the search box to supply the url of the current site in the 'u' parameter in the request url for the search results page. The supplied url will in turn trigger the search results web part to limit the results to the specified site and its sub-sites.
Leverage the refinement web part on the search results page to let users narrow results to a specific sub-site. It includes a Site refiner in the default configuration.
You would likely need to create specific search scopes within your search service application if you wanted to index each subsite separately. That said, your search configuration in terms of what search center a site uses, and what those contextual dropdown options are, is controlled at the site collection level, so you will be unable to set them per subsite. Every subsite in a given site collection will use the same search center and have the same contextual options.