No, non vengono prese delle pagine html, ma del contenuto Html. Ti spiego, prendiamo per esempio Wordpress, tu scrivi il tuo bell'articolo sul "php", quando lo pubblichi, lui ti crea una nuovi riga nella tabella esempio "Articoli", e la popola con il titolo "Che bello il php", autore, contenuto "Il php...." sommario e così via. Quando per esempio fai una ricerca con la parola chiave "PHP" lui che fa? Esegue una query del tipo
lui ti estrae tutte le righe dove il contenuto contiene la parola "php".codice:SELECT * FROM "Articoli" WHERE contenuto LIKE "%php%" LIMIT 0 , 30
Logicamente quest'esempio è molto grossolano, dato che la parola php può stare anche in un articolo che parla, che so, di cucina, in parole povere trova anche <a href="index.php">
Comunque, qui c'è un bell'articolo su come creare un motore di ricerca
Un motore di ricerca in PHP e MySQL