tendo que se conectar ao site a partir da linha de comando

tendo que se conectar ao site a partir da linha de comando

Consigo me conectar ao seguinte https://registry.terraform.io/.well-known/terraform.json usando um navegador

Quando tento me conectar a ele pela linha de comando

curl: (7) Falha ao conectar-se à porta 443 do registro.terraform.io: Tempo limite esgotado

alguma idéia de como resolver isso obrigado

Responder1

o problema ocorreu com configurações incorretas de proxy na janela de comando HTTPS_PROXY=configurações de proxy do navegador

Responder2

DR

Experimente o curlcomando listado abaixo na Etapa 7. Se isso não funcionar, você provavelmente terá outro problema além do seu curlcomando (como firewall ou proxy).

Copiando solicitações do navegador com cURL

Se você conseguir se conectar a um navegador, uma maneira de eliminar possíveis problemas com seu curlcomando é “copiar” a transação desejada de seu navegador. Chrome, Firefox e Opera têm um console de desenvolvedor que permite isso.

  1. Abra uma nova guia em branco.

  2. No Chrome e no Firefox, pressione F12para abrir o console do desenvolvedor. No Opera, pressione Ctrl+ Shift+ I.

  3. Procure a Networkopção e selecione-a.

  4. Navegue até o URL desejado, por exemplohttps://registry.terraform.io/.well-known/terraform.json.

  5. Você deve acabar vendo algo semelhante ao seguinte:

    ex. Transações de rede

    Console do desenvolvedor Firefox - Transações de rede - Captura de tela

  6. Selecione a transação desejada, clique com o botão direito e selecione a opção Copy as cURL(para Chrome, use Copy as cURL (cmd)).

    ex. Copiar como cURL

    Console do desenvolvedor Firefox - Transações de rede - Copiar como cURL - Captura de tela

  7. Se você colar o conteúdo da área de transferência, deverá ter uma cópia exata da solicitação para curl:

    curl "https://registry.terraform.io/.well-known/terraform.json" -H "authority: registry.terraform.io" -H "upgrade-insecure-requests: 1" -H "user-agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36" -H "sec-fetch-mode: navigate" -H "accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3" -H "sec-fetch-site: none" -H "accept-encoding: gzip, deflate, br" -H "accept-language: en-US,en;q=0.9" --compressed
    

Este curlcomando deve replicar exatamente a solicitação feita pelo navegador.

Outros problemas

Supondo que isso não resolva o problema, você terá que investigar outros motivos pelos quais essa solicitação pode estar falhando, como problemas de firewall/proxy ou problemas de certificado.

  • Use a opção -kou --insecurepara ignorar certificados autoassinados ou inválidos com curl.

  • Considere usar o --verbosesinalizador, bem como descartar cabeçalhos HTTP com -D -, com curlpara ajudar na solução de problemas.


Emulando um navegador específico

Com base no seu comentário adicional de que suas solicitações cURL (genéricas) ainda estão falhando, é provável que você precise emular o navegador específico que pode se conectar com êxito.

Os navegadores se identificam com umAgente de usuáriostring associada a uma determinada versão desse navegador. Se quiser emular o navegador que pode se conectar ao seu URL, você precisará:

  1. Use as etapas que dou abaixoCopiando solicitações do navegador com cURLno navegador que pode se conectar com sucesso.

  2. Tente substituir o user-agentvalor na Etapa 7 pelo valor retornado de um site comoQual é o meu navegador(acesse este link no navegador que não tenha problemas para acessar seu link).

Exemplo (Opção 2)

Agente de usuário "genérico" (acima)

-H "user-agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36"

Agente de usuário específico (por exemplo, de What Is My Browser)

-H "user-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0"

É importante observar que o primeiro método (copiar a solicitação) é provavelmente o mais confiável, pois pode capturar cabeçalhos diferentes daqueles user-agentusados ​​para autorizar uma solicitação.


informação relacionada