Descubra quais recursos não estão passando por HTTPS


92

Eu tenho um site ASP.NET que deve ser transportado completamente por HTTPS. No entanto, no Google Chrome, recebo um aviso de que a página inclui recursos que não são seguros. Como posso descobrir quais são esses recursos e por que eles não iriam por HTTPS?


1
pergunta semelhante aqui stackoverflow.com/questions/305538/…
arkoak


12
Chrome Devtools> guia Rede> clique com o botão direito em qualquer título de coluna> clique em "Esquema"
Costa

Isso também é comumente visto quando os usuários incorporam imagens de url em postagens do stackexchange, eles usam a versão http em vez de https.
jiggunjer

Sei que esta postagem é um pouco antiga, mas caso ajude alguém, há um aplicativo de desktop que você pode executar agora para verificar e relatar problemas de conteúdo misto encontrados em um site: ecommerce.co.uk/httpschecker Espero que ajude :)
stilliard

Respostas:


44

Normalmente, isso ocorre porque você está carregando imagens, javascript inclui arquivos ou arquivos CSS externos sem usar https. Você pode usar um programa como o FireBug: http://getfirebug.com/

FireBug dirá a você como seus elementos estão carregando e quais não estão passando pela camada SSL. Se você não tem o Firefox, então tenho certeza que o Chrome também tem algo semelhante ao FireBug integrado.

Veja como usar o firebug:

  1. Abrir firebug
  2. Clique na guia Console
  3. Recarregue a página
  4. Quaisquer erros de https serão exibidos no console e informarão qual recurso não está funcionando.

Espero que isto ajude


17
Você poderia ser mais específico?

2
Carregue a página com a guia Net ativada. Assim que o carregamento da página for concluído, passe o mouse sobre cada entrada e a entrada GET exibirá a URL que está recuperando. Você eventualmente encontrará aqueles que estão sendo recuperados via HTTP em vez de HTTPS.
Joe C

2
você acha que verifique manualmente cada um especificamente em toda a pilha de ativos? Que tal alguma filtragem https?
palmic

5
Para adicionar à solução de @phantom, você pode clicar com o botão direito em uma entrada na guia Rede e escolher "copiar tudo como HAR". Isso copiará todas as entradas como um objeto do tipo JSON, o que torna mais fácil colar em um editor e Ctrl-F para "http:". No entanto, não posso acreditar que não haja uma guia de esquema na guia Rede de Ferramentas do Desenvolvedor.
Protetor um de

3
Acabei de ter o mesmo problema, mas todas as referências de imagem, css e js eram https. Mas alguns eram vermelhos. Então, copiei o url e só quando colei na guia do navegador deles descobri que o certificado do servidor havia expirado. Portanto, esse é outro motivo não óbvio para o erro.
stu

87

Acabei de ter esse problema no Chrome também. Verifiquei na guia Rede, mas todos os recursos foram carregados por https.

Solução: feche o Chrome e abra novamente.

O Chrome deve armazenar em cache sua detecção de conteúdo seguro para que, mesmo quando você corrigir os problemas, a mensagem de conteúdo inseguro não desapareça.


18
Fechar o cromo é um exagero, basta fechar a guia.
Patrick James McDougle

1
Tenho uma relação de amor / ódio com o Chrome - problemas como esse vão para a coluna "ódio". -_- Tanto tempo perdido para nada. Obrigado por esta solução, funcionou para mim.
Mike

@MjrKusanagi obrigado pelo truque..RESTART funcionou para mim também..não consegui ver nada na guia de rede ou erros do console..mudei todas as opções padrão..realmente me perguntando por que não estava funcionando..mas peguei o verde https: // na barra de endereço ..
Lucky

Meu problema era a tag <form> em minha página. O depurador de rede do Webkit não mostrará se seu parâmetro de ação aponta para uma url não segura!
Billy

38

Não tenho nada a ver com as pessoas que fornecem este script online, mas é fácil e pode ser marcado em qualquer navegador .. funciona bem e rapidamente para resolver o problema .. http://www.whynopadlock.com


Ei, isso foi realmente útil, não consegui encontrar o culpado até que tentei esse script e descobri que era uma fonte do Google vinculada a http em vez de https!
Daniel Valadas

Essa foi a única coisa que expôs o problema, obrigado. Acontece que eu tinha uma tag <form> referenciando uma ação em http - não https!
Billy

8

No Google Chrome: Você pode visualizar o recurso ofensivo na Consoleguia da Inspect Elementjanela.

Ele será listado como:

A página em https://example.com/page exibia conteúdo não seguro de http : //example.com/resource

Claro que você pode ter que recarregar a página com a Inspect Elementjanela já aberta.


3
Guia Rede> clique com o botão direito em qualquer título de coluna> clique em "Esquema"
Costa

1
@Costa: O problema com essa abordagem é que ela não lista o conteúdo que o Chrome bloqueou. A solução na resposta mostra ambos.
colan

Isso é conhecido como "Gaveta do console" e é aberto clicando no símbolo "> ☰" próximo ao canto superior direito do inspetor.
Dale Anderson

O Chrome também fornecerá esse aviso para formulários em uma página enviada para locais não seguros.
Dale Anderson

Ótima resposta. Corrigi todos os problemas de http listados em minha guia de rede. mas o console me mostrou que eu também tive que corrigir um destino de formulário para um boletim informativo para torná-lo usar https. Aparentemente, nenhum destino de formulário em uma página SSL pode ter como alvo uma página não SSL.
Buttle Butkus

6

Uma das maneiras mais fáceis de fazer isso é clicar com o botão direito do mouse na página no Firefox e selecionar Exibir informações da página. Em seguida, vá para a guia Mídia e encontre tudo o que está carregando de http em vez de https.


2
Isso funciona muito bem para imagens e similares, mas muitas vezes é um Javascript vinculado ou arquivo CSS que causa a quebra do HTTPS.
Joe C

Esta é a solução mais rápida para encontrar o link do culpado em uma determinada página. Acho que esta é a melhor solução de todas as soluções nesta página. Obrigado
Pavan Kumar

Isso não funciona, pois não mostra javascripts que são carregados por outros scripts. Ele mostra apenas os elementos que estão directamente ligadas no HTML
Janning

5

Nós corrigimos nossa própria coceira e criamos uma ferramenta que rastreia seu site e informa quais páginas contêm recursos não SSL. Você só precisa inserir o URL raiz do seu site - não há necessidade de verificar cada página manualmente.

http://www.jitbit.com/sslcheck/


2

Percebi que quando tive esse problema que uma barra de ferramentas (uTorrent) estava causando o erro. Tirei a barra de ferramentas e o erro foi embora. Não sei por que uma barra de ferramentas causaria um erro em meu site, mas não há mais problemas aqui com o certificado SSL.


1

No Chrome, você pode descobrir quais recursos foram carregados via http versus https fazendo o seguinte:

1) No menu de ferramentas, escolha Ferramentas> Ferramentas do desenvolvedor

2) Clique no ícone "Recursos" da barra de ferramentas

3) Expanda a pasta Frames para ver as diferentes páginas. Expanda a página cujos recursos você deseja ver. Os recursos individuais para a página são listados, divididos por imagens, scripts e folhas de estilo

4) Para ver a URL que foi usada para carregar aquele recurso, basta passar o mouse sobre o nome do recurso e a URL aparecerá, seja com http ou https. Você também pode clicar no nome de uma imagem para ver a imagem no lado direito, junto com seu URL


3
Guia Rede> clique com o botão direito em qualquer título de coluna> clique em "Esquema"
Costa

Ótimo. Por que eles chamam de esquema em vez de protocolo? : /
Aamir Afridi

1

Para adicionar a isso, cliquei com o botão direito nos títulos das colunas na exibição da guia Rede e selecionei Protocolo.

Se você clicar no título Protocolo, o conteúdo do relatório será agrupado por HTTPS, etc.


No Chrome v69, acho que a coluna "Esquema" seria mais útil neste caso.
Tasos,

0

O Chrome tem sua própria ferramenta de desenvolvedor.

você pode clicar com o botão direito em uma página, inspecioná-la ... e então clicar na guia "rede" e recarregar a página. você verá o fluxo de trabalho.


0

Não sei se alguém verificará esta resposta. Ou você já deve ter encontrado a solução, mas de qualquer forma, minha resposta pode ajudar outras pessoas que sofrem de problemas semelhantes

http://www.whynopadlock.com/

Este é o link que usei para verificar o conteúdo / arquivo inseguro que estava sendo carregado na minha página.

Espero que ajude. :)


0

Acabei de descobrir o mesmo comportamento no Chrome (o firefox mostrou um cadeado verde), embora todos os recursos tenham sido carregados via https.

A razão no meu caso era que o servidor suportava SSLv3 quebrado (google poodle).

Configurando ssl_protocols para excluir SSLv2 em nginx.conf assim

ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE

resolveu o problema para mim.

Considero lamentável que o cromo não torne esse motivo mais transparente. "esta página carrega alguns recursos de forma insegura" é muito enganador, se não estiver errado.


0

Se você deseja rastrear seu próprio site a partir de sua própria área de trabalho para obter uma lista de todos os recursos carregados (embora não carregados por javascript, o que é importante ter em mente), se estiver usando o Windows, você pode usar o detetive de links do Xenu . Exporte o arquivo TSV e, em seguida, clique com o botão direito e abra com o Excel, em seguida, classifique por URL, você pode encontrar aqueles recursos http irritantes para todas as páginas do site!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.