Saltar para o conteúdo
Índice
Sites

Corrigir Avisos de Conteúdo Misto Após Ativar HTTPS

Tradução automática. O original em inglês está disponível.

O Que É Conteúdo Misto

Um navegador trata uma página como segura apenas se a página e tudo o que ela carrega chegarem através de HTTPS. Se uma página HTTPS puxa uma imagem, script, folha de estilos, fonte ou iframe de um endereço http://, o navegador marca-a.

Os navegadores dividem isto em duas categorias, e comportam-se de forma muito diferente:

  • Conteúdo misto ativo: scripts, folhas de estilos, iframes e XHR. Os navegadores bloqueiam-nos completamente. Os layouts colapsam, os sliders param, os formulários deixam de ser submetidos. Este é o tipo destrutivo.
  • Conteúdo misto passivo: imagens, áudio e vídeo. Estes normalmente ainda carregam, mas o cadeado é desclassificado ou removido.

Um site pode portanto parecer completamente fine e ainda assim estar a perder o seu cadeado, ou parecer quebrado sem nenhum erro óbvio na página em si.

Por Que Acontece Depois de Ativar SSL

Ligar SSL muda a forma como o seu site é servido. Não muda o que está armazenado dentro dele.

WordPress escreve URLs absolutas na base de dados, por isso um site que funcionava em HTTP durante qualquer período de tempo tem endereços http:// guardados em:

  • Conteúdo de posts e páginas, incluindo todas as imagens inseridas através do editor.
  • Registos de anexos de mídia.
  • Configurações do personalizador de temas e opções de temas.
  • Conteúdo de widgets e configurações de blocos.
  • Configurações de plugins, particularmente construtores de páginas e plugins de sliders.
  • As opções siteurl e home.

Nada isto se atualiza sozinho. Ativar SSL e depois questionar-se por que é que o cadeado está quebrado é uma das questões de suporte mais comuns, e esta é a razão.

Passo 1: Forçar HTTPS no Servidor

Antes de tocar na base de dados, certifique-se de que todos os visitantes estão a chegar em HTTPS em primeiro lugar.

  1. Inicie sessão em KPanel e clique em Websites na barra lateral esquerda.
  2. Clique no seu site.
  3. Abra Settings.
  4. Sob Behavior, ative Forçar HTTPS.
  5. Clique em Guardar Alterações.

A configuração Forçar HTTPS sob Comportamento na página Definições para um site em KPanel

Todos os pedidos HTTP são agora redirecionados para HTTPS no servidor, antes do seu site ser executado.

Forçar HTTPS trata dos pedidos que chegam. Não reescreve URLs já armazenadas na sua base de dados, portanto por si só não limpará um aviso de conteúdo misto causado por uma imagem http:// codificada. Precisa de ambas as coisas: isto e o Passo 2.

Se SSL ainda não estiver ativo, ou o certificado parecer errado, comece com Certificados SSL.

Passo 2: Reescrever os URLs Armazenados

Esta é a correção que realmente resolve o conteúdo misto.

  1. Abra o site, depois o separador WordPress, depois a secção Ações Rápidas.
  2. Encontre o cartão Procurar e Substituir e clique em Configure.
  3. Em Localizar (valor antigo) introduza http://yourdomain.co.nz.
  4. Em Substituir por introduza https://yourdomain.co.nz.
  5. Deixe Execução de teste (apenas pré-visualização, sem alterações) marcada e clique em Preview.
  6. Reveja a contagem e o resumo por tabela.
  7. Desmarque Execução de teste, clique em Run, e confirme.

Uma cópia de segurança completa é feita automaticamente antes da substituição, e cada tabela é abrangida, incluindo as criadas por plugins. As configurações de plugins serializadas são tratadas corretamente.

Não faça isto com uma consulta SQL em phpMyAdmin. WordPress armazena configurações de plugins e temas como strings serializadas que registam o comprimento de cada valor, portanto uma REPLACE() bruta quebra-as e as configurações repõem-se silenciosamente para vazias. Não há reparação exceto restaurar uma cópia de segurança. A explicação completa está em Executar uma Procura e Substituição.

Se o seu plano inclui a consola, o comando equivalente é:

search-replace 'http://yourdomain.co.nz' 'https://yourdomain.co.nz' --all-tables --dry-run

Solte --dry-run para o aplicar, e faça uma cópia de segurança você mesmo primeiro: a consola não o faz.

Passo 3: Limpar Todas as Caches

Uma cópia em cache de uma página continuará a servir os URLs HTTP antigos muito depois da base de dados estar corrigida, razão pela qual as pessoas muitas vezes pensam que a substituição não funcionou.

  1. WordPress, depois Ações Rápidas, depois Limpar Cache.
  2. WordPress, depois Caching, depois Limpar a cache, se a cache de página completa estiver ativa.
  3. Performance, depois Kapsule CDN, depois Purge, se o CDN estiver ativo. Veja Purgar a Cache CDN.
  4. Qualquer plugin de cache, a partir do seu próprio ecrã de configurações.
  5. O seu próprio navegador. Teste numa janela privada para não ser enganado pela sua própria cache.

Passo 4: Encontrar O Que Resta

A maioria dos sites estão limpos após o Passo 2. Quando um aviso sobrevive, encontre o recurso exato em vez de adivinhar.

Consola do navegador. Abra as ferramentas de desenvolvedor com F12, vá para o separador Console, e recarregue. O conteúdo misto aparece como um aviso explícito nomeando o URL completo do recurso ofensor. Esse URL diz-lhe qual plugin ou tema é responsável.

Separador Network. Filtre por http:// para listar cada pedido inseguro que a página fez.

Fonte da página. Carregue a página, veja a fonte, e procure por http://. Ignore tudo dentro de atributos xmlns e declarações de schema: essas são identificadores, não pedidos.

Sobreviventes comuns, e o que fazer sobre cada um:

O que encontraCorreção
Uma imagem ou logótipo numa configuração do personalizador de temasRe-envie ou re-selecione no personalizador
Um módulo de construtor de página com um URL de imagem http:// digitadoEdite esse módulo e corrija o URL
Tabela própria de configurações do plugin sliderRe-guarde o slider, ou execute a procura e substituição com --all-tables
Uma fonte ou script de um domínio de terceirosVerifique se o fornecedor oferece HTTPS. A maioria oferece agora. Mude o URL
Um pixel de rastreamento ou incorporação de um fornecedor antigoSe o fornecedor não tiver HTTPS, remova-o. É uma dependência quebrada, não um problema de KapsuleHost
http:// codificado num ficheiro de modelo de temaEdite o modelo, ou melhor, use https ou uma referência relativa ao protocolo

Se exatamente uma página é afetada e o resto do site está limpo, o culpado é conteúdo nessa página, não uma configuração de site wide. Abra-a no editor e veja a mídia que incorpora.

Confirmando Que Está Corrigido

  1. Carregue o site numa janela privada.
  2. O cadeado deve estar sólido, sem triângulo de aviso e sem indicação cortada.
  3. Clique no cadeado. O navegador relata a ligação como segura sem aviso de conteúdo misto.
  4. Abra a consola e recarregue mais uma vez. Avisos de conteúdo misto zero.
  5. Verifique uma página profunda, não apenas a página inicial: uma página interior, uma publicação de blog com imagens, e o checkout numa loja.

Evitar Que Volte

  • Deixe Forçar HTTPS ligado. É uma configuração de uma linha que remove uma classe inteira de problema.
  • Nunca digite um URL http:// completo em conteúdo. Use a biblioteca de mídia, que agora armazena endereços HTTPS.
  • Verifique as configurações do plugin após instalar qualquer coisa que peça um URL.
  • Observe um aviso de retorno após uma atualização de plugin. Alguns plugins repõem os seus próprios URLs armazenados.
  • Re-execute a procura e substituição após qualquer migração, uma vez que uma base de dados importada traz os URLs do host antigo consigo: Migrar um Website De cPanel.

Resolução de Problemas

O cadeado está bem para mim, quebrado para um colega. Página em cache. Peça-lhe para recarregar numa janela privada.

O site quebrou completamente após a substituição. Restaure a cópia de segurança automática de pré-execução: Restaurar De uma Cópia de Segurança.

A consola mostra um aviso de conteúdo misto num domínio que não é meu. Um recurso de terceiros. Não pode corrigir o seu servidor: ou suportam HTTPS e muda o URL, ou elimina o recurso.

Tudo é HTTPS mas o site não carrega completamente. Isso não é conteúdo misto. Comece com Website Não Carregando e verifique o certificado em Certificados SSL.

Se trabalhou através de tudo isto e o aviso persiste, envie um e-mail para support@kapsulehost.com com o URL afetado e o texto exato do aviso da consola do navegador.

Isto foi útil?

É uma IA? Leia esta página em Markdown

Artigos relacionados

Ligar via SFTP: FileZilla, Cyberduck e Linha de ComandosSFTP (Secure File Transfer Protocol) dá-lhe acesso direto aos ficheiros do seu site no servidor. Este guia cobre tudo o que precisa para se ligar com sucesso,…Certificados SSL e HTTPSEste artigo explica o que é o SSL em linguagem simples, como o KapsuleHost gere o SSL automaticamente para os seus sites, e o que fazer caso ocorra algum…Sites Web: Por Onde ComeçarComo funciona o alojamento de sites na KapsuleHost, o que existe em cada separador de um site e qual o guia a ler para a tarefa que tem em mãos.…Monitorização do Tempo de Atividade do SiteTodos os sites na KapsuleHost são verificados automaticamente a cada 60 segundos, e o separador Uptime mostra-lhe o resultado: estado actual, percentagem de…

Ainda precisa de ajuda?

Pergunte à Kora, que conhece a sua conta, ou contacte a nossa equipa.

Contacte-nosSuporte por e-mail