Today, most users need search engines to facilitate search and information retrieval processes. Unfortunately, traditional search engines have a significant challenge that they should retrieve high-precision results for a specific unclear query at a minimum response time. Also, a traditional search engine cannot expand a small, ambiguous query based on the meaning of each keyword and their semantic relationship. Therefore, this paper proposes a comprehensive search engine framework that combines the benefits of both a keyword-based and a semantic ontology-based search engine. The main contributions of this work are developing an algorithm for ranking results based on fuzzy membership value and a mathematical model of exploring a semantic relationship between different keywords. In the conducting experiments, eight different test cases were implemented to evaluate the proposed system. Executed test cases have achieved a precision rate of 97% with appropriate response time compared to the relevant systems.