Tenho um site ao qual adicionei as tags \u003cmeta\u003e OpenGraph necessárias, mas ele não está exibindo nenhuma prévia do Onebox. Ele está passando na validação OpenGraph, então duvido que seja um problema de marcação.
(Não posso postar um link para o validador, pois sou um usuário novo)
Posso observar no lado do servidor que ele está, de fato, servindo páginas para o robô do Discourse:
User-Agent: 'Discourse Forum Onebox v3.3.0.beta1-dev'
IP Address: 2602:fd3f:3:204:0:242:ac11:2d
mas os links simplesmente não aparecem:
Considerei que o problema poderia ser porque retornamos 505 HTTP Version Not Supported para requisições HEAD, com base neste tópico. então corrigi nosso servidor para retornar uma resposta superficial 200 OK para o método HEAD:
Você pode verificar se o seu servidor não está bloqueando as requisições? Pelo que vejo, recebo 400 como código de erro (quando olho a resposta do Discourse fetch).
Entendo, reconfigurei o site para tratar requisições HEAD de forma idêntica às requisições GET.
O site tem uma política de segurança que retorna 400 a menos que o cliente envie uma string de user agent que comece com a string \"Discourse Forum Onebox\" e um cabeçalho Accept-Language: *. Consigo passar o filtro usando curl com as seguintes configurações:
$ curl -v -I --http1.1 \
-A 'Discourse Forum Onebox v3.3.0.beta1-dev' \
-H 'Accept-Language: *' \
https://swiftinit.org -o /dev/null