Olá! Na NLnet Labs, estamos configurando o Discourse para nossos produtos (community.nlnetlabs.nl). Um usuário perguntou sobre como obter o feed RSS para um tópico específico (ex: https://community.nlnetlabs.nl/c/cascade/10), pois o leitor de RSS dele não o encontrou.
Tentei usar essa página específica do tópico com meu leitor de feed RSS de preferência, e ele encontrou dois feeds: “NLnet Labs Community - Latest Posts” (/posts.rss) e “NLnet Labs Community - Latest topics” (/latest.rss). Eu sei que /c/cascade/10.rss é um feed RSS válido, mas meu leitor não o encontrou automaticamente. Isso é um pouco frustrante, pois precisaremos começar a comunicar esses URLs nós mesmos.
Eu investiguei a descoberta automática de feed RSS para meu site pessoal, então tenho alguma experiência com isso. Verifiquei o <head> da página da web; notei os seguintes links:
<link rel="alternate" type="application/rss+xml" title="Latest posts" href="https://community.nlnetlabs.nl/posts.rss">
<link rel="alternate" type="application/rss+xml" title="Latest topics" href="https://community.nlnetlabs.nl/latest.rss">
<link rel="alternate nofollow" type="application/rss+xml" title="RSS feed of topics in the 'Cascade' category" href="https://community.nlnetlabs.nl/c/cascade/10.rss">
Portanto, o <head> inclui um terceiro link para o feed RSS específico do tópico; mas parece que alguns leitores de feed RSS não gostam do atributo rel=”nofollow”.
É claro que verifiquei o MDN (HTML attribute: rel - HTML | MDN); nofollow é documentado como:
Indica que o autor ou editor original do documento atual não endossa o documento referenciado.
Mas também:
Relevante para
<form>,<a>e<area>, a palavra-chavenofollowinforma aos spiders de mecanismos de busca para ignorar o relacionamento do link. O relacionamento nofollow pode indicar que o proprietário do documento atual não endossa o documento referenciado. É frequentemente incluído por Otimizadores de Mecanismos de Busca que fingem que suas link farms não são páginas de spam.
Procurei no código-fonte do Discourse no GitHub, e com algumas buscas e git blame consegui encontrar FEATURE: add nofollow to RSS alternate link in topics and categories by rr-it · Pull Request #16013 · discourse/discourse · GitHub. Então, suponho que o segundo significado para rel=”nofollow” foi o pretendido aqui. Seguindo a discussão de fundo, parece ser útil para guiar a priorização em crawlers de sites. Houve um acompanhamento adicional em Search engines now blocked from indexing non-canonical pages - #4 by rrit, mas não consegui descobrir se rel=\"nofollow” ainda é importante.
Não consegui encontrar nenhuma discussão no Discourse Meta sobre este problema, embora o PR tenha sido mesclado em 2022. Claramente, há um mal-entendido nas convenções em torno dos <link>s para feeds RSS, entre alguns leitores de feed RSS e o Discourse. Então, pergunto:
- O
rel=”nofollow”ainda serve à sua intenção original de melhorar a priorização de crawlers de sites, ou foi substituído por outras técnicas? - Esse comportamento (ou seja, ignorar links
rel=”nofollow”) na autodescoberta de leitores de feed RSS parece ser comum? Outros conseguem replicá-lo? Não estou ciente de um padrão autoritário sobre autodescoberta de feed RSS. - Há disposição para suportar este caso de uso, para que os leitores de feed RSS descubram automaticamente as postagens corretas? A existência desses
<link>s específicos de tópico, mesmo que não estejam sendo usados pelo meu leitor, me faz pensar que sim; talvez a perda de funcionalidade tenha sido simplesmente esquecida quandorel=”nofollow”foi adicionado?
Para os desenvolvedores do Discourse: obrigado por construírem isso!