L'argomento mi interessa a causa delle dimensioni di Wikipedia. Potrebbe essere facile creare alcuni croni per aggiornare periodicamente le sitemap in un piccolo sito, ma che ne dici di uno grande? Così:
In che modo Wikipedia genera la sua Sitemap?
L'argomento mi interessa a causa delle dimensioni di Wikipedia. Potrebbe essere facile creare alcuni croni per aggiornare periodicamente le sitemap in un piccolo sito, ma che ne dici di uno grande? Così:
In che modo Wikipedia genera la sua Sitemap?
Risposte:
È generato dinamicamente da uno script PHP. Per i siti di grandi dimensioni è probabilmente meglio controllare le modifiche e generare solo se qualcosa è cambiato o generarlo solo ogni XY minuti / ore / giorni. Dipende dall'infrastruttura.
Le informazioni necessarie sono tutte nel database, quindi non è un compito così difficile.
Ed ecco la prova: http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/maintenance/generateSitemap.php?view=log / http://www.mediawiki.org/wiki/Manual:GenerateSitemap. php
Modifica: Ah e questo potrebbe essere interessante anche per questo argomento:
Qualche tempo fa ho dovuto affrontare il compito di creare una mappa del sito per il nostro sito Web. Sebbene non abbia le dimensioni di Wikipedia, è ancora circa centomila pagine e circa il 5% di esse viene modificato, aggiunto o rimosso quotidianamente.
Poiché l'inserimento di tutti i riferimenti di pagina in un singolo file lo renderebbe troppo grande, ho dovuto dividerli in sezioni. L'indice della mappa del sito punta a una pagina aspx con una stringa di query per una delle 17 diverse sezioni. A seconda della stringa di query, la pagina restituisce un xml che fa riferimento a diverse migliaia di pagine, in base agli oggetti presenti nel database.
Pertanto, la mappa del sito non viene creata periodicamente, ma viene creata al volo quando qualcuno lo richiede. Poiché disponiamo già di un sistema per la memorizzazione nella cache delle ricerche nel database, questo viene ovviamente utilizzato anche per recuperare dati per la mappa del sito.
Sebbene il codice di generazione della Sitemap sia nel core core di MediaWiki e sarebbe sicuramente l'opzione scelta per produrre una Sitemap, non vedo alcuna prova che Wikipedia lo abbia effettivamente attivato. Il file robots.txt non punta a nessuna mappa del sito.
Inoltre, qualsiasi script di manutenzione eseguito su progetti Wikimedia è controllato da puppet e non vi è istanza di generateSitemap.php nel repository puppet . Infine, non c'è neanche una sitemap nelle discariche per nessun wiki di Wikimedia , mentre ci sono " abstract per Yahoo ".
In ogni caso, Wikipedia esegue le cache di Squid davanti ai loro server di app. Possono controllare la frequenza con cui la loro Sitemap viene aggiornata regolando il tempo di scadenza della pagina.
Inoltre, qualunque cosa Wikipedia faccia per indicizzare non è un buon modello per la tua wiki, perché Google ha contatti / offerte / gestione speciali di Wikipedia, vedi un esempio recente .
Non sono positivo, ma penso che utilizzino l' estensione Google Sitemap per MediaWiki. Questo è supportato dalla pagina Wikipedia su Sitemap .