Magento 2: O que causa o erro "Falha ao ativar criptografia"?

7

Estou tentando instalar o Magento 2.1 através do meta-pacote do compositor com o seguinte comando

composer create-project --repository=https://repo.magento.com/ magento/project-community-edition

No entanto, o compositor falha ao atualizar os dados packages.jsonfrom repo.magento.come

O " https://repo.magento.com/packages.json arquivo" não pôde ser baixado: Falha ao ativar a criptografia

Alguém sabe o que aciona o erro "Falha ao ativar criptografia" e como alguém pode corrigi-lo?

Alan Storm
fonte
ao recuperar dados repo.magento.com que precisa de autenticação, você deve ter auth.json em seu diretório raiz que conterá magento nome de usuário e senha repositório{ "http-basic": { "repo.magento.com": { "username": "a98186c7f7777dbb05d959bdb91b9729", "password": "344ce14c479f1c8eae77edb58b4ec66f" } } }
Aman Alam
@amanAlam Você tem certeza? Porque eu tenho um auth.json há um tempo e funcionou bem até hoje. Além disso, o erro está referenciando um problema de criptografia, não um problema de autenticação. O que garante que seja um erro de autenticação?
Alan Storm
Não tenho muita certeza porque, anteriormente, eu tenho algum erro de autenticação durante a instalação e ele resolveu o problema, então eu pensei que isso poderia ajudá-lo.
Aman Alam
Verifique este link para ajudá-lo a github.com/composer/composer/issues/4825
Aman Alam
@ AlanStorm no seu exemplo de código, o --repository-urlnão está escrito corretamente. Eu não poderia fazer a edição sozinho, pois o SE quer um mínimo de 6 caracteres em uma edição e não queria mexer com sua pergunta.
ryanF

Respostas:

6

Parece que o Magento aumentou bastante o HTTPS no repo.magento.comservidor.

Essas configurações são suficientemente rígidas para que aplicativos que suportam HTTPS, mas usam uma versão mais antiga do OpenSSL, possam ter suas conexões rejeitadas.

Ou seja, se a versão do PHP que você está usando para executar composer.pharestiver vinculada a uma versão mais antiga do PHP, você receberá o erro Falha ao ativar criptografia . Você pode testar sua versão do PHP com o seguinte trecho de código.

error_reporting(E_ALL);
$context = stream_context_create();
$contents = file_get_contents('https://repo.magento.com/packages.json', false, $context);

A razão pela qual recebi esse erro foi / é a versão empacotada do PHP que uso (dependendo de como você conta) há quase 13 anos, sendo vinculada a uma versão mais antiga do SSL. Os mantenedores de pacotes lançaram uma nova compilação que parece resolver esses problemas.

Se você estiver usando uma versão empacotada diferente do PHP, precisará pressionar os mantenedores de pacotes para lançar uma nova compilação que corrige isso ou pressionar o Magento para fazer o mesmo.

Se você está construindo uma versão do PHP (manualmente, via brew, etc), verifique se está usando a versão mais moderna do OpenSSL com suporte a TLS moderno (eu posso ter usado essas palavras incorretamente, não um especialista em HTTPS / SSL por qualquer extensão)

Alan Storm
fonte
4

Eu resolvi atualizando o pacote liip do OS X

http://php-osx.liip.ch

você só precisa executar o comando de uma linha nessa página

fonte: http://devdocs.magento.com/guides/v2.0/release-notes/tech_bull_tls-repo.html

EDIT: Depois disso, verifique se você está usando a versão atualizada com php -vewhich php

Obrigado @AlanStorm!

mrzhero
fonte
2
A atualização do pacote liip do OS X funcionou para mim. Sem saber mais, se você ainda está vendo o erro de criptografia, acho que você não está executando a versão mais recente do liip.
1955 Alan Alan Storm
OMG que foi RÁPIDO! : D Sim, você estava certo, eu não estava usando a versão mais recente. Eu sentei um pseudônimo para php5.6 no meu bash_profile e funcionou! Mais uma vez obrigado Alan!
Mrzhero
-1

Não tenho certeza do que causaria esse erro, além de algo possivelmente relacionado ao Composer que estabelece uma conexão segura por https? Mas isso é apenas um palpite.

Acabei de executar o comando agora e foi bem-sucedido.

Talvez tente de novo? Peço desculpas por não fornecer mais informações.

ryanF
fonte