TL:DR, é semi-humanamente possível replicar o rastreamento do Googlebot no Discourse. Veja como começar…
Torne-se um com o Googlebot
Abra uma janela anônima (sempre comece do zero)
Abra o DevTools
Abra as Condições de Rede no DevTools
Desmarque ‘Usar padrão do navegador’
No menu suspenso, escolha Googlebot Smartphone
Em seguida, acesse https://meta.discourse.org (parece bem diferente; não é nada demais porque seu Googlebot e os bots não se importam)
Vá em Exibir > Desenvolvedor > Exibir Código-Fonte
Copie e cole em algum arquivo .html
Bom trabalho! Você criou o arquivo que os humanos referenciam para ver o que o Googlebot rastreou e cacheou.
O trabalho do Googlebot está feito. Agora é hora de renderizar o arquivo em cache em um navegador.
Torne-se um com o Chrome
Abra o terminal e execute npx http-server
Navegue até o arquivo
Abra o Chrome DevTools
No painel Elementos, clique com o botão direito em <html>... e selecione Copiar outerHTML.
Esse é o conteúdo que será indexado, não cacheado, indexado.
Em resumo, o Googlebot recupera o HTML e o Chrome o renderiza. O HTML renderizado é ouro. Certifique-se de que seu conteúdo valioso e links estejam aparecendo lá.
O HTML em cache é renderizado no Chrome (sem interface gráfica). Quando renderizado, conteúdo e links suplementares podem ser introduzidos via JavaScript, no DOM. O Google levará em consideração as informações que renderizar para fins de indexação.
É assim que o Googlebot obtém conteúdo de aplicativos com uso intensivo de JavaScript. Vá ao Google e pesquise algo que você sabe que renderiza conteúdo apenas com JavaScript > clique no ícone de 3 pontos > clique no botão Cache > clique em Ver código-fonte > copie-o e renderize-o no Chrome para ver qual conteúdo aparece no DOM.
Observação: atualize quaisquer caminhos relativos (recursos CSS e JS) para absolutos antes de renderizá-los no Chrome ^^
Certifique-se de incluir a string do user agent do Googlebot, por exemplo, Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html). O servidor pode enviar um HTML diferente para o Googlebot.
Acho que é a mesma saída, mas não custa nada adicionar o user agent. Não tenho certeza sobre o Chrome, mas no Firefox você pode clicar com o botão direito na solicitação na guia de rede e escolher “copiar como curl” para um conjunto completo de cabeçalhos que imitarão uma solicitação de navegador.