In generale, un sito web come un sito di e-commerce, e di solito anche siti di notizie, blog e quant'altro con pagine altamente strutturate (come Stack Overflow stesso - sebbene non provi a cercarlo ), pubblicherà un XML file Sitemap .
Una sitemap XML è fondamentalmente solo un grande file XML con una serie di collegamenti a tutte le pagine del sito. Solitamente include anche la relativa "importanza" di ogni pagina all'interno del sito (quindi una pagina prodotto è più importante di una lista di categorie, ad esempio) che aiuta il motore di ricerca a decidere cosa preferirebbe visualizzare in una pagina dei risultati.
Poiché il file sitemap.xml può essere molto grande (diversi megabyte per un sito di grandi dimensioni), Google e altri motori di ricerca accettano anche file Sitemap più specializzati. Ad esempio, una " Sitemap di notizie "conterrà collegamenti a tutte le notizie pubblicate da un sito Web di notizie nelle ultime 48 ore. Google "ping" quel file molto più frequentemente (anche fino a una volta ogni due minuti) per verificare se sono state pubblicate nuove storie - questo è il modo in cui mantengono link aggiornato.
Si noti che il file Sitemap contiene solo collegamenti a pagine all'interno del sito. Non è un dump del database o qualcosa del genere. Questo perché i motori di ricerca sono specificamente interessati a indicizzare un sito nello stesso modo in cui lo leggeranno gli umani . Ecco perché mettono così tanto l'accento sul penalizzarti dal "ingannarlo" per indicizzare qualcosa che un umano non vedrebbe mai (testo nascosto e quant'altro).
Modifica
In risposta alla tua domanda, per la funzionalità di ricerca "interna", sì, la maggior parte di questi sarà implementata utilizzando una ricerca diretta del database, piuttosto che la tipica tecnica del motore di ricerca "pubblico" di scansione / indice / query.
Per rendere più rapida la ricerca, in genere viene utilizzato qualcosa come Lucene (alcuni database forniscono in-built funzionalità di ricerca full-text, ma Lucene è più completo di qualsiasi ricerca full-text in-built che abbia mai visto). In sostanza, ciò che viene fuori da una ricerca di Lucene sarà l'identificativo del prodotto / post di blog / notiziario corrispondente alla tua query, e quindi recupererai quei risultati dal database per visualizzarli come preferisci.
Tuttavia, può essere abbastanza complesso da configurare. Molti siti useranno solo qualcosa come una ricerca personalizzata di Google, che fondamentalmente fa semplicemente una normale ricerca su Google con "site: example.com" pre-pending alla stringa di query. Di solito restituisce risultati peggiori rispetto a Lucene, ma è piuttosto semplice da configurare.