[regressão] incorporação de iframe quebrada com domínio src permitido

Olá, adicionei https://www.tickcounter.com às minhas allowed_iframes, mas este script ainda não aparece:

<div style="left:0; width:100%; height:0; position:relative; padding-bottom:25%; margin:0 auto">
<iframe src="https://www.tickcounter.com/widget/countdown/5847336" style="top:0; left:0; width:100%; height:100%; position:absolute; border:0; overflow:hidden" title="My countdown"></iframe>
</div>

Nada nos logs de erro, pelo que posso ver.

Também falhou para um iframe incorporado diferente de um domínio src diferente que permiti.

Exatamente o mesmo tipo de iframe incorporado do mesmo domínio src funcionou da última vez que tentei, talvez há 6 meses ou um ano. Agora estou no Discourse v3.3.1 +5 (ramo estável).

Na versão mais recente do branch tests-passed, o iframe é incorporado sem problemas. Observe que os atributos style e title que você definiu serão removidos pelo Discourse. No entanto, você pode definir os atributos width e height. Por exemplo:

<iframe src="https://www.tickcounter.com/widget/countdown/5847336" width="100%"></iframe>

O que você vê ao navegar até a postagem e depois abrir a aba “elements” das ferramentas de desenvolvedor do seu navegador?

E se você abrir a aba “console” nas ferramentas de desenvolvedor? Há algum erro?

:thinking: hmmm. Isso parece estar funcionando como esperado para mim também.

admin - todas as configurações do site - iframes permitidos:

previewer:

post cozido:

1 curtida

Muito obrigado pelas respostas.

<div> class="regular contents"><div> class="cooked"></div class="cooked"></div class="regular contents"> <section class="post-menu-area clearfix"><nav class="post-controls expanded">

Hmm, há alguns erros:

Falha ao carregar recurso: net::ERR_CONNECTION_REFUSED
beacon.min.js:1

Mas isso parece ser uma lista negra de DNS que estou usando. Quando me conecto por uma VPN, não há erros. E parece mais do que uma coincidência que outro usuário com um computador e rede completamente diferentes tenha relatado esse mesmo problema para mim originalmente.

OK O Firefox mostra outra mensagem no console:

Um cookie particionado ou acesso ao armazenamento foi fornecido a “https://www.tickcounter.com/widget/countdown/4471981” porque ele está sendo carregado em um contexto de terceiros e o particionamento dinâmico de estado está habilitado.
[Saiba mais]

Também devo mencionar que colei o código do iframe em um arquivo HTML estático esquelético e o abri no navegador, e ele carregou o iframe corretamente.

Ok, este iframe costumava funcionar para você… Você está usando o Cloudflare por acaso? Se sim, talvez dê uma olhada e veja se desabilitar a coisa do “speed brain” faz alguma diferença? (se estiver habilitado) Eu sei que é uma coisa relativamente nova.

2 curtidas

Olá, não, eu não uso o Cloudflare.

2 curtidas

sim, consigo fazer o iframe funcionar. algo está bloqueando ele no seu fórum.

Hmm, sim, é o que parece. Mas o Discourse não deveria ter um erro em /logs/?

Não estou executando nada no servidor que eu possa pensar que bloquearia isso. Eu estava usando o DNS do provedor de hospedagem em meu /etc/resolv.conf, e tentei mudá-lo para 8.8.8.8 sem nenhuma alteração neste problema.

apenas se causar um erro. algo pode estar bloqueando como questão de funcionalidade adequada. Minha suposição é tentar descobrir se/o que mudou na época em que isso parou de funcionar. Eu me pergunto se uma mudança na Política de Segurança de Conteúdo poderia ter afetado isso.

Você parece dizer que está usando uma lista de bloqueio de DNS e que isso está causando problemas, então não a use?

2 curtidas

Você adicionou

ou
https://www.tickcounter.com/ às configurações de iframes permitidos?

3 curtidas

É um serviço de DNS que bloqueia domínios com má reputação. Mas esse não é o problema porque 1) quando me conecto por uma VPN, ele usa um DNS diferente e esse problema continua, e 2) o usuário que me relatou esse problema está usando uma configuração completamente diferente, 3) a configuração de DNS é apenas para minha LAN e não para o servidor Discourse, que não está gerando o HTML adequado no lado do servidor, e 4) este arquivo HTML carrega o iframe corretamente:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta name="description" content="Webpage description goes here" />
  <meta charset="utf-8">
  <title>Change_me</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="author" content="">
</head>

<body>

<div style="left:0; width:100%; height:0; position:relative; padding-bottom:25%; margin:0 auto">
<iframe src="https://www.tickcounter.com/widget/countdown/5847336" style="top:0; left:0; width:100%; height:100%; position:absolute; border:0; overflow:hidden" title="My countdown"></iframe>
</div>

</body>
</html>

Nossa, era isso, estava faltando o / final
Muito obrigado!

Algo mudou no Discourse, porque eu adicionei https://www.tickcounter.com da última vez que tentei isso e na época funcionou. Na minha opinião, ou a lógica regexp que ele está usando ou a descrição da configuração precisa ser ajustada, porque diz:

Uma lista de prefixos de domínio src de iframe que o Discourse pode permitir com segurança em postagens

Quando penso em um “prefixo de domínio”, penso em um nome de domínio e/ou um subdomínio, ambos não incluem um /. Ou se ele deveria usar uma lógica mais precisa para URLs src de iframe complexas, então deveria dizer algo como:

Uma lista de prefixos de URL src de iframe que o Discourse pode permitir com segurança em postagens

3 curtidas

quando você adiciona o link, ele deve mostrar uma mensagem de erro abaixo do campo de que você precisava de outra barra “/”

3 curtidas

Os links adicionados há mais de 2 meses (antes da correção de segurança ser mesclada) são o problema, naquela época você não recebia uma mensagem de erro e até mesmo os links padrão não continham um terceiro ‘/’.
Este é pelo menos o segundo tópico de suporte por causa disso

3 curtidas

Sim, eu estava me perguntando se era esse o caso - que os links existentes quebraram em algum momento. :thinking:

1 curtida

É possível verificar a entrada existente e notificar os administradores sobre links que não funcionam mais?

3 curtidas

Para mim, acho que a maior fonte de confusão foi o fato de ser chamado de “domínio” quando, na verdade, é uma URL.

2 curtidas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.