Usando Discourse com Cloudflare: Melhores Práticas

Espero que seja útil, mas também escrevi um guia geral sobre as melhores configurações aqui:

Um membro da equipe do Cloudflare também adicionou algumas dicas e correções na seção de comentários.

Estou atualizando esse guia e estava tentando ver se havia algum conselho novo do Discourse e encontrei esta página.

Vou adicionar estes às minhas regras gerenciadas. Obrigado!

Aqui está uma visão geral das minhas regras personalizadas. Isso realmente ajudou a reduzir spam e, muitas vezes (nem sempre), parte do tráfego de menor qualidade vem via VPNs e tráfego de DC, o que estas regras ajudaram:

Vou fazer um artigo adequado com o conteúdo completo das regras, estou executando estas há cerca de 6 meses e validando seu sucesso usando a ferramenta Log Explorer e inspecionando 10k eventos de cada vez.

2 curtidas

Estou tentando entender a integração do Cloudflare usando a versão gratuita antes de usá-la em um novo site Discourse. Alguém pode detalhar isso com especificações/exemplos? Assuma que o site Discourse é: ‘discourse.abc123.com

(1) O Cloudflare parece remover os cabeçalhos de segurança do nginx de origem que eu tenho atualmente?

(2) Eu não entendo estes comentários: “Se você decidir ativar o CDN do CloudFlare (nuvem laranja), você precisa dar mais um passo e estabelecer uma regra de página para o endereço da sua instância do Discourse. A regra precisa ‘Desativar Desempenho’ (não vejo essa opção) o que desligará os recursos do CloudFlare que são bem documentados por interferir com o Discourse.” E Crie as seguintes regras de página em dash.cloudflare.com/?to=/:account/:zone/rules:

  • Definir Nível de Cache como “Ignorar” (Bypass) para community.example.com/session/*

  • Configurar Configurações de Regras para normalizar URLs de entrada

Qualquer outra pegadinha que eu deva lidar.

Agradeço antecipadamente.

Tenho usado o Cloudflare no modo proxy na frente do meu fórum Discourse desde o verão de 2025 sem problemas; simplesmente não há muitas coisas específicas do Discourse que você precise fazer hoje em dia para fazê-lo funcionar corretamente.

Um dos itens mais críticos é garantir a inclusão do modelo do Cloudflare no seu arquivo app.yml. Sem isso, você verá apenas os endereços IP do servidor Cloudflare no seu painel do Discourse, em vez dos endereços IP reais dos visitantes.

A regra “Ignorar cache para /session/\*” ainda parece ser necessária (faça-a como uma regra de cache na nova interface), e a regra “Ignorar WAF na criação/edição de posts” é definitivamente ainda necessária (eu a tenho como uma regra gerenciada).

Como estou usando principalmente o Discourse como um sistema de comentários para um site Wordpress, configurei o Wordpress para adicionar um TTL de 60 segundos nas respostas AJAX de /wp-json/wp-discourse/v1/discourse-comments?post_id=xxxx que o servidor web emite quando os visitantes solicitam o tópico de comentários de um post específico do WP; isso ajuda a gerenciar padrões de visitantes com picos. Adicionei uma regra de cache do CF que respeita o TTL em URIs que incluem /wp-json/wp-discourse/. (Não consigo definir um TTL baixo o suficiente nessas URLs via Cloudflare sem uma conta Enterprise, então defino o TTL na camada do aplicativo por meio de um mu-plugin e depois digo ao CF para respeitar esse TTL por meio de uma regra de cache do CF.)

Fora isso, e as configurações básicas mencionadas na postagem de abertura do tópico, não há muito o que fazer—o Cloudflare funciona muito bem com o Discourse.

5 curtidas

Olá, configurei isso recentemente e terminei em 20 minutos.

Eu também uso o plano gratuito do Cloudflare, e algumas das configurações foram alteradas; se você usar a barra de pesquisa no painel do Cloudflare, aparecerá a nova localização para ela. Tive alguns problemas para encontrar algumas das configurações também.

Isso requer uma reconstrução

2 curtidas

Eu só liguei o Xiao Huang Yun e não fiz nenhuma operação ainda ~ Quando eu tiver tempo, vou configurá-lo também para ver o efeito.

Terminei o artigo sobre Discourse + Cloudflare WAF que mencionei anteriormente:

Cobre a pilha completa de regras personalizadas que uso no meu fórum Discourse: regras de ignorar (skip) para ativos estáticos e /message-bus, regras de bloqueio (block) para scanners, desafios de ASN e geo, limitação de taxa (rate limiting) ajustada para o Discourse e exceções de regras gerenciadas.

Também encontrei algo que precisa de esclarecimento na expressão de criação/edição de postagens no guia oficial: o operador regex matches requer o plano Business. Então, no artigo, usei uma alternativa starts_with que funciona nos planos Pro.

Testado em um fórum ativo com tráfego real. Aguardo sugestões, melhorias ou se alguém encontrar problemas com a configuração.

3 curtidas

Eu gostaria de saber. Qual é a diferença entre esta forma de configuração e ligar apenas o “pequeno nuvem amarela” (Xiao Huang Yun), mantendo todas as outras configurações como padrão. Obrigado.

1 curtida

Ótima pergunta. Apenas com as configurações padrão da nuvem laranja, você obtém DNS, CDN, proteção DDoS e o conjunto de regras gerenciadas gratuito. Essa é uma base sólida e o Discourse funcionará bem apenas com isso.

O motivo pelo qual muitos vão além é muitas vezes o SPAM, mas também o desperdício de largura de banda/recursos do servidor e o desempenho geral de velocidade/carregamento da página.

Em relação ao SPAM, recebíamos de 5 a 10 postagens de spam por semana, e às vezes era tão implacável que eu estava ativamente procurando soluções aqui nestes fóruns.

Desde a implementação dessas regras personalizadas, isso caiu para talvez 2 ou 3 por mês. O principal problema restante são um ou dois trolls e encrenqueiros que continuam se inscrevendo com novas contas quando são pegos. Mas esse é outro tópico! A combinação de desafiar o tráfego de data centers e VPNs, desafiar o Tor e países problemáticos fez uma grande diferença.

Além do spam, há o lado dos recursos de hospedagem. Saber exatamente para que seus recursos de hospedagem estão sendo usados ajuda muito. Também é bom para a internet em geral não alimentar tráfego automatizado/bots.

Comece com hospedagem sólida e rápida em uma boa rede, isso é o mais importante. Em seguida, o Cloudflare por cima garante que os usuários que estão longe do seu servidor ainda tenham uma experiência rápida. A camada de cache ajuda mesmo com as configurações padrão, mas ir além das configurações padrão continua a melhorar tanto o desempenho quanto a segurança.

Por padrão, o Cloudflare vem com configurações que são extremamente seguras de habilitar sem efeitos colaterais. Mas há muitas configurações adicionais que também são seguras de habilitar e simplesmente não são ativadas por padrão. E as regras personalizadas precisam ser personalizadas porque o Cloudflare não oferece nenhum tipo de assistente onde você seleciona “Estou executando o Discourse” ou “Estou executando o WordPress” e ele cria regras para você. Seria um ótimo recurso, e planejo sugerir isso na minha próxima ligação com eles.

Então, depende do que você deseja. Se as configurações padrão estiverem funcionando e o spam não for um problema, você pode não precisar de nada disso.

Mas, na minha opinião, se você deseja mais controle sobre o que chega ao seu fórum e deseja extrair cada pedacinho de desempenho da sua configuração, desde a camada de hospedagem até a borda, as regras personalizadas valem o esforço.

2 curtidas