O tópico me interessa por causa do tamanho da Wikipedia. Pode ser fácil criar alguns crons para atualizar os mapas de site periodicamente em um site pequeno, mas e quanto a um grande? Assim:
Como a Wikipedia gera seu Sitemap?
É gerado dinamicamente por um script PHP. Para sites grandes, provavelmente é melhor verificar se há alterações e gerar apenas se algo mudou - ou gerar apenas a cada XY minutos / horas / dias. Depende da infraestrutura.
As informações necessárias estão todas no banco de dados, portanto não é uma tarefa tão difícil.
E aqui está a prova: http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/maintenance/generateSitemap.php?view=log / http://www.mediawiki.org/wiki/Manual:GenerateSitemap. php
Edit: Ah e isso também pode ser interessante para este tópico:
Fui confrontado com a tarefa de criar um mapa do site há algum tempo. Embora não seja do tamanho da Wikipedia, ainda possui cerca de cem mil páginas, e cerca de 5% delas são alteradas, adicionadas ou removidas diariamente.
Como colocar todas as referências de página em um único arquivo tornaria muito grande, tive que dividi-las em seções. O índice do mapa do site aponta para uma página aspx com uma sequência de consultas para uma das 17 seções diferentes. Dependendo da string de consulta, a página retorna um xml referenciando vários milhares de páginas, com base nos objetos existentes no banco de dados.
Portanto, o mapa do site não é criado periodicamente; em vez disso, é criado rapidamente quando alguém o solicita. Como já temos um sistema para armazenar em cache as pesquisas no banco de dados, isso também é usado para buscar dados para o mapa do site.
fonte
Embora o código de geração do mapa do site esteja no principal do MediaWiki e certamente seja a opção escolhida para produzir um mapa do site, não vejo nenhuma evidência de que a Wikipedia esteja ativada. O arquivo robots.txt não aponta para nenhum mapa do site.
Além disso, qualquer script de manutenção executado em projetos Wikimedia é controlado pelo fantoche e não há instância de generateSitemap.php no repositório do fantoche . Por fim, também não há mapa do site nos despejos de qualquer wiki da Wikimedia , enquanto existem " resumos para o Yahoo ".
De qualquer forma, a Wikipedia executa caches Squid na frente de seus servidores de aplicativos. Eles podem controlar com que frequência o mapa do site é atualizado ajustando o prazo de validade da página.
Além disso, o que quer que a Wikipedia faça para indexar não é um bom modelo para o seu wiki, porque o Google tem contatos / negócios / manipulação especiais da Wikipedia, veja um exemplo recente .
fonte
Não sou positivo, mas acho que eles usam a extensão Google Sitemap para o MediaWiki. Isso é suportado pela página da Wikipedia em Sitemaps .
fonte