Discourse instalado usando o guia oficial do GitHub
Tudo correu bem, mas estou recebendo um erro 502 ao acessar o fórum.
Tentei verificar os logs de produção do Rails, mas não encontrei nada relacionado a production_error ou logs do Sidekiq.
Vi apenas isso ao usar o tail:
Criando escopo :open. Sobrescrevendo o método existente Poll.open.
Criando escopo :open. Sobrescrevendo o método existente Poll.open.
Não foi possível acessar ‘/images/welcome/discourse-edit-post-animated.gif’ para obter suas dimensões.
Ao executar o discourse doctor, aparece:
Versão do Discourse em forum.abc.com.au: NÃO ENCONTRADA
Tentei desabilitar o SSL e reconstruir; consegui acessar o fórum.
Deve haver um problema com o SSL que não consigo identificar. Durante a instalação do SSL, a resolução do IP para a conexão foi bem-sucedida.
Após analisar todos os logs, descobri que o erro está na emissão do certificado do Let’s Encrypt. Qualquer pessoa que esteja enfrentando um problema semelhante pode ajudar abaixo.
forum.abc.com.au:Verify error:CAA record for forum.abc.com.au prevents issuance
Antes de executar o script de instalação do Discourse para um subdomínio, precisamos verificar se o domínio principal possui registros CAA e confirmar a Autoridade Certificadora. Se não for a Let’s Encrypt (no meu caso, o registro CAA do domínio principal é comodoca.com), seus certificados Let’s Encrypt para o Discourse não serão emitidos.
Se você souber de uma maneira de testar esses registros que não exija software adicional, eu consideraria fazer o discourse-setup testá-lo, mas nunca vi isso antes.
É uma suposição razoável que, se você possui um domínio e sabe o que é CAA, tenha sido capaz de configurá-lo e, portanto, compreenda as implicações do Let’s Encrypt.
@pfaffman
dig caa {domain.tld} retornará o registro.
Primeiro, queremos verificar se ele retorna algum registro.
Em seguida, verificar se a autoridade emissora é diferente de letsencrypt.org.
Mas esse é um caso muito raro. Não tenho certeza se queremos incluir isso.
Correto. Se eu possuo um domínio, sei o que estou fazendo com ele.
Estava ajudando alguém; esse problema pode ocorrer com hospedagens que usam o cPanel e fornecem certificados SSL automáticos com outros provedores, como o Comodo. Eles adicionam vários registros por padrão ao criar um site (WordPress) no cPanel.
De qualquer forma, esse é um caso muito raro; é a primeira vez que vejo isso.
Vemos a CAA aparecer aqui ocasionalmente. A resposta padrão que recebemos quando apontamos que eles restringiram a emissão de certificados para todo o domínio costuma ser
Se você definir um registro CAA para @ (o domínio), isso se aplicará tanto ao domínio de nível superior quanto aos subdomínios. Você ainda pode adicionar um CAA específico para subdominio.seudominio.com para um serviço como o Let’s Encrypt, o que restringirá o escopo para o qual o LE pode emitir um certificado.
Você também pode especificar issuewild em vez de issue para permitir que uma AC emita um certificado curinga, e iodef para associar um endereço de e-mail que será notificado em caso de violações de política.
Mesmo problema aqui. Os comandos não resolveram o problema. Mudei para DNS e proxy do Cloudflare. O problema persiste para mim.
Já fiz isso várias vezes e não tive esse problema. Mas sou definitivamente um não-programador, não-especialista, não-tudo-relacionado. Apenas um usuário final feliz. Mas isso é frustrante.
Minha melhor suposição é que você configurou o Cloudflare para proxy e reconstruiu vezes suficientes para atingir os limites de taxa do Let’s Encrypt e agora você tem que esperar uma semana para obter um certificado.
A solução rápida e simples é escolher um novo subdomínio, configurar o Cloudflare apenas para DNS e reconstruir. Se isso funcionar, então eu estou certo sobre a limitação de taxa e você pode aprender a amar o novo subdomínio ou esperar uma semana até que ele permita que você tente novamente.
Eu estava apenas pensando sobre a mesma coisa, não tenho certeza sobre a solicitação, mas nenhum novo certificado parece ser emitido se um for encontrado válido (acabei de reconstruir um sandbox)