Este documento responde às perguntas mais comuns sobre o uso do SDK para PHP, ajudando você a desenvolver com mais eficiência.
Verificação do ambiente
Certifique-se de que o ambiente PHP esteja instalado corretamente e que a versão do PHP seja 5.6 ou superior.
Instale o Composer globalmente no seu sistema.
A versão do PHP usada para instalar o SDK com o Composer deve ser igual ou anterior à versão do PHP em tempo de execução. Por exemplo, se você instalar o SDK em um ambiente PHP 7.2, o diretório vendor gerado só poderá ser usado com PHP 7.2 ou superior. Se você copiá-lo para um ambiente PHP 5.6, ocorrerão problemas de incompatibilidade de versões de dependências.
Problemas
Problema 1: Problemas ao passar parâmetros AccessKey
Sintoma: Um erro é relatado durante a execução do código. Se a mensagem de erro contiver as informações a seguir, isso indica que as credenciais da Alibaba Cloud (AccessKey) não estão definidas corretamente.
SDK V2.0: AlibabaCloud\Tea\Exception\TeaUnableRetryError: code: 400, AccessKeyId is mandatory for this action.
SDK V1.0: Fatal error: Uncaught AlibabaCloud\Client\Exception\ClientException: AccessKey ID cannot be empty in XXX.
Solução:
-
Execute os comandos a seguir para verificar se as variáveis de ambiente
ALIBABA_CLOUD_ACCESS_KEY_IDeALIBABA_CLOUD_ACCESS_KEY_SECRETestão configuradas:Linux/macOS
echo $ALIBABA_CLOUD_ACCESS_KEY_ID echo $ALIBABA_CLOUD_ACCESS_KEY_SECRETWindows
echo %ALIBABA_CLOUD_ACCESS_KEY_ID% echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%Se o AccessKey correto for retornado, a configuração foi bem-sucedida. Caso o valor retornado esteja vazio ou incorreto, tente definir as variáveis de ambiente novamente. Para obter mais informações, consulte Configurar variáveis de ambiente em sistemas Linux, macOS e Windows.
-
Verifique se há erros relacionados ao AccessKey no código.
Exemplo de erro comum:
$config = new Config([ "accessKeyId" => getenv("yourAccessKeyID"), "accessKeySecret" => getenv("yourAccessKeySecret") ]);Exemplo correto:
$config = new Config([ "accessKeyId" => getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), "accessKeySecret" => getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET") ]);Notagetenv("ALIBABA_CLOUD_ACCESS_KEY_ID")
e
getenv()recuperam os valores deALIBABA_CLOUD_ACCESS_KEY_IDeALIBABA_CLOUD_ACCESS_KEY_SECRETdas variáveis de ambiente.ImportanteNão codifique seu AccessKey em texto simples no código de produção. Essa prática apresenta riscos de segurança.
Problema 2: Uma mensagem de erro "cURL error 60: SSL certificate problem: unable to get local issuer certificate" ou "curl error 28 while downloading https://repo.packagist.org/packages.json: SSL connection timeout" é relatada ao chamar uma OpenAPI.
Causas
Problemas de conectividade de rede: A rede local é instável ou um firewall está bloqueando a conexão SSL.
Problemas de configuração de proxy: O proxy não está configurado corretamente, o que impede o acesso a recursos externos.
Problemas de certificado SSL: O sistema local não confia em alguns certificados SSL, causando tempos limite de conexão.
Soluções
Verifique sua conectividade de rede. Certifique-se de ter acesso à Internet e de que a conexão de rede esteja estável.
-
Configure o Composer para usar um proxy:
composer config -g -- unset http-proxy composer config -g -- unset https-proxy composer config -g http-proxy http://your-proxy:port composer config -g https-proxy https://your-proxy:port -
Baixe um certificado CA confiável:
Baixe um certificado CA confiável, como o Mozilla CA Certificate Store.
Configure o caminho do certificado SSL para o PHP. No arquivo php.ini, procure por
curl.cainfo, defina seu valor como o caminho absoluto do certificado CA e remova o símbolo de comentário (;) do início do item de configuração.Reinicie o serviço PHP.
-
Confie em um certificado autoassinado (opcional). Se o problema de conexão for causado por um certificado autoassinado, permita que o Composer ignore a validação SSL. Isso não é recomendado para ambientes de produção.
composer config --global -- disable-sslImportanteEsta operação desativa temporariamente a validação SSL. Certifique-se de executar o comando
composer config --global --enable-sslposteriormente para reativá-la e garantir a segurança do sistema.
Problema 3: Um erro "PHP Fatal error: Class 'Darabonba\OpenApi\Models\Config' not found" é relatado em tempo de execução.
Esse erro ocorre porque o recurso de autoload do Composer não está ativado. Solução:
Quando o Composer baixa dependências, ele gera um diretório vendor que contém um arquivo autoload.php. Adicione uma instrução require_once ao código do seu aplicativo.
require_once(<path to the autoload.php file in the vendor directory>)
Problema 4: Um erro "PHP Fatal error: Uncaught exception 'GuzzleHttp\Exception\RequestException' with message 'cURL error 3'" é relatado em tempo de execução.
Esse erro ocorre devido a um RegionId ou Endpoint incorreto. Solução:
Certifique-se de que a região selecionada oferece suporte ao serviço que você está chamando. Encontre o endpoint do produto na página inicial do produto no Portal do Desenvolvedor OpenAPI. Por exemplo, para o Short Message Service, faça login no OpenAPI Portal. Na barra de navegação superior, selecione Short Message Service. Na página de visão geral do Short Message Service, clique na aba Service Area List. Visualize o Region ID (como cn-beijing, cn-hangzhou ou cn-shanghai) e o Service Endpoint (que é dysmsapi.aliyuncs.com para regiões na China continental e dysmsapi.ap-southeast-1.aliyuncs.com para regiões fora da China) de cada região. Garanta que o RegionId e o Endpoint no seu código sejam consistentes com esta lista.
Problema 5: Um erro "Could not fetch [repository], please review your configured GitHub OAuth token" é relatado em tempo de execução.
Esse erro ocorre porque as credenciais do GitHub fornecidas ao Composer estão incorretas ou expiraram. Solução:
Os pacotes do SDK da Alibaba Cloud não exigem credenciais do GitHub.
Se você instalou o Composer de uma fonte não oficial e não precisa de credenciais do GitHub para acessar repositórios privados, exclua o arquivo
auth.jsonno diretório do Composer.Caso precise de credenciais do GitHub para acessar repositórios privados, atualize o token conforme solicitado pelo Composer.
Problema 6: Uma chamada de API expira e relata o erro "cURL error 28: Resolving timed out after 5000 milliseconds (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://dysmsapi.aliyuncs.com".
Tempos limite podem ser causados por vários fatores. As seções a seguir descrevem causas comuns e suas soluções:
Problemas de conectividade de rede
Descrição: A solicitação não consegue alcançar o servidor de destino porque a rede entre o cliente e o servidor está desconectada ou instável.
Solução:
Use o comando ping ou curl para testar a conectividade entre seu host local e o endpoint do produto de nuvem. Por exemplo, se uma chamada para a operação SendSms expirar, use ping dysmsapi.aliyuncs.com ou curl -v https://dysmsapi.aliyuncs.com para testar a conectividade.
Se o comando expirar ou não retornar uma resposta, verifique se o firewall local ou roteador possui alguma política de bloqueio.
Caso o comando retorne uma resposta, defina um período de tempo limite razoável para evitar falhas de solicitação devido a configurações inadequadas. Para obter mais informações, consulte Configuração de tempo limite. O código a seguir fornece um exemplo:
// Set the timeout in runtime parameters. This is valid only for requests that use this runtime parameter instance.
$runtimeOptions = new RuntimeOptions();
$runtimeOptions->connectTimeout = $connectionTimeoutMillis;
Longo tempo de processamento da API
Descrição: O tempo que a API de destino leva para processar a solicitação excede o período de tempo limite de leitura configurado.
Solução: Configure o período de tempo limite de leitura para acomodar um tempo de resposta maior da API. Para obter mais informações, consulte Configuração de tempo limite. Por exemplo, configure o parâmetro de tempo limite de leitura para estender esse período para a solicitação atual. O código a seguir fornece um exemplo:
// Set the timeout in runtime parameters. This is valid only for requests that use this runtime parameter instance.
$runtimeOptions = new RuntimeOptions();
$runtimeOptions->readTimeout = $readTimeoutMillis;
Problema 7: Um erro "alibabacloud/tea[3.0.0,3.2.01 require ext-curl*-> it is missing from your system. Install or enable PHP's curl extension,100e ..." é relatado em tempo de execução.
Esse erro ocorre porque a extensão curl para PHP está ausente. Solução:
Para sistemas Ubuntu/Debian:
sudo apt-get install php-curl
Para sistemas CentOS/Fedora/RHEL:
sudo yum install php-curl
Problema 9: Ao executar o comando composer require, uma mensagem de erro "[Composer\Downloader\TransportException], The file could not be downloaded (HTTP/1.1 404 Not Found)" ou "your requirements could not be resolved to an installable set of packages" é relatada.
[root@hecs-x-large-2-win-20210204102325 rcw.zhiyuechuanbo.com]# composer require alibabacloud/ocr-api-20210707 3.1.2
Warning: This development build of composer is over 60 days old. It is recommended to update it by running "/usr/bin/composer self-update" to get the latest version.
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Warning from https://mirrors.aliyun.com/composer: Support for Composer 1 will be shutdown on August 1st 2025. You should upgrade to Composer 2. See https://blog.packagist.com/shutting-down-packagist-org-support-for-composer-1-x/
[Composer\Downloader\TransportException]
The "https://mirrors.aliyun.com/composer/p/provider-2013%24a2b47ec1a1bb999e53d88aff50728aebbd3d68225c74aab1ff5f071bac42f5b7.json" file could not be downloaded (HTTP/1.1 404 Not Found)
Possíveis causas
A fonte de espelhamento de tráfego utilizada, como o espelho da Alibaba Cloud, pode não ter sincronizado as informações mais recentes do pacote a tempo, causando a ausência de alguns arquivos.
A URL da fonte de espelhamento de tráfego pode ter mudado ou o caminho pode estar incorreto.
Soluções
-
Verifique e certifique-se de estar usando a fonte de espelhamento de tráfego correta.
-
Execute o comando a seguir para visualizar a fonte de espelhamento do Composer configurada atualmente:
composer config -g --list -
Espelho completo do
Composerda Alibaba Cloud:https://mirrors.aliyun.com/composer/composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ -
Espelho completo do
Composerda Tsinghua:https://mirrors.tuna.tsinghua.edu.cn/composer/composer config -g repo.packagist composer https://mirrors.tuna.tsinghua.edu.cn/composer/
-
-
Desative temporariamente a fonte de espelhamento de tráfego e use o repositório central oficial diretamente. Para isso, modifique ou exclua a configuração
repositoriesnocomposer.jsonou execute o comandocomposer config --unset repos.url.# Use the official Composer repository. composer config -g repo.packagist composer https://packagist.org Verifique sua conectividade de rede. Uma rede instável pode impedir que os arquivos sejam baixados corretamente. Tente alternar para um ambiente de rede diferente ou usar uma VPN.
-
Se uma mensagem for exibida ao executar o comando indicando que a versão do Composer é muito antiga (`
Warning: This development build of composer is over 60 days old. It is recommended to update it by running "/usr/bin/composer self-update" to get the latest version.`), atualize para a versão mais recente (opcional).# Update Composer to the latest version. composer self-update # Use composer.phar to run the latest version. composer self-update --1 -
Caso um aviso do
Composerseja exibido ao executar o comando, indicando que o suporte aoComposer 1será descontinuado, atualize para a versão 2.x para melhor compatibilidade e segurança (opcional).composer self-update --2ImportanteVerifique se os pacotes dos quais seu projeto depende oferecem suporte ao Composer 2.x. Talvez seja necessário atualizar o código e a configuração do projeto.
-
Se ocorrer um erro de
Content-Lengthdurante o download, geralmente significa que o download dos dados foi interrompido e os dados reais recebidos não correspondem ao valor esperado.-
Limpe o cache do Composer e execute o comando de instalação novamente.
# Delete the .composer directory Remove-Item -Recurse -Force $HOME\.composer # Delete all content in the C:\tmp directory Remove-Item -Recurse -Force C:\tmp\*rm -rf ~/.composer/ && rm -rf /tmp/* Flutuações na rede podem causar interrupções no download. Execute o comando de instalação várias vezes.
Verifique a estabilidade da sua rede. Certifique-se de que a conexão esteja estável e evite fazer downloads durante horários de pico.
-
Problema 10: Um erro "Could not delete D:\www\touming_keyword_api\vendor\composer\tmp-7fd77eb46d69640d6040743642007957:This can be due to an antivirus or the Windows Search Indexer locking the file while they are analyzed" é relatado ao executar o Composer.
Possíveis causas
Quando o Composer tenta instalar dependências, ele não consegue excluir arquivos temporários. Isso pode ocorrer porque um software antivírus ou o Windows Search Indexer bloqueou o arquivo.
Soluções
-
Verifique as permissões. Em um sistema Windows, o Composer pode falhar ao criar ou modificar arquivos necessários devido a permissões insuficientes.
Certifique-se de que todos os comandos do Composer sejam executados no modo administrador para evitar problemas de permissão.
Confirme se os arquivos e diretórios necessários para o Composer possuem permissões de leitura e gravação.
-
Verifique a disponibilidade da versão do pacote, limpe o cache e reinstale.
-
Verifique as versões disponíveis do pacote necessário. Por exemplo:
composer show alibabacloud/ecs-20140526 --all -
Limpe o cache do Composer e reinstale:
composer clear-cache
-
-
Verifique se o serviço Windows Search está em execução. Esse serviço pode indexar arquivos, fazendo com que sejam bloqueados. Para parar este serviço, execute as etapas a seguir:
Pressione
Win + Rpara abrir a caixa de diálogo Executar.Insira
services.msce pressioneEnter.Localize o serviço "Windows Search", clique com o botão direito nele e selecione "Stop".
Após parar o serviço, tente instalar as dependências do Composer novamente.
-
Desbloqueie o arquivo ou crie um novo diretório para instalação.
-
Desbloqueie o arquivo executando a linha de comando como administrador:
Clique com o botão direito no CMD ou PowerShell e selecione "Run as administrator".
-
Execute o comando a seguir para excluir o diretório bloqueado:
rmdir /S /Q "D:\www\touming_keyword_api\vendor\composer\tmp-7fd77eb46d69640d6040743642007957" Certifique-se de que nenhum programa, como software antivírus ou o Windows Search Indexer, esteja bloqueando o arquivo. Tente desativar temporariamente o software antivírus e execute o comando do Composer novamente.
-
Crie um novo diretório para instalação. Crie um novo diretório e realize operações do Composer nele:
mkdir D:\new_directory cd D:\new_directory composer require alibabacloud/ecs-20140526 6.0.1
-
-
Se ocorrer um erro 404 durante a instalação, altere a fonte de espelhamento de tráfego e tente instalar novamente.
composer config -g repo.packagist composer https://packagist.org
D:\Appserv\PHPTutorial\WWW\changheyuedu>composer require alibabacloud/dysmsapi-20170525 2.0.8
./composer.json has been updated
Running composer update alibabacloud/dysmsapi-20170525
Loading composer repositories with package information
https://mirrors.aliyun.com/composer could not be fully loaded (curl error 61 while downloading https://mirrors.aliyun.com/composer/p2/alibabacloud/dysmsapi-20170525.json: Error while processing content unencoding: Unknown failure within decompression software.), package information was loaded from the local cache and may be out of date
Installation failed, reverting ./composer.json and ./composer.lock to their original content.
[Composer\Downloader\TransportException]
curl error 61 while downloading https://mirrors.aliyun.com/composer/p2/alibabacloud/dysmsapi-20170525.json: Error w
hile processing content unencoding: Unknown failure within decompression software.
Problema 11: Um "cURL error 61" é relatado ao executar composer require alibabacloud/dysmsapi-20170525.
Possíveis causas
Problema de cache do Composer: O cache local está corrompido ou incompleto.
Problema na fonte de espelhamento de tráfego: A fonte de espelhamento está instável ou indisponível.
Problema de rede: A conexão de rede está instável ou bloqueada por um firewall.
Problema de versão do Composer: Uma versão desatualizada do Composer está sendo usada.
Problema de configuração do ambiente: As variáveis de ambiente ou o arquivo de configuração do Composer apresentam anomalias.
Soluções
-
Verifique sua conectividade de rede.
-
Execute o comando a seguir para testar se a rede está normal:
curl -I https://mirrors.aliyun.com/composer/p2/alibabacloud/dysmsapi-20170525.json Verifique as configurações do firewall para garantir que ele não esteja bloqueando o
curlde acessar recursos externos.Tente usar uma rede diferente. Alterne o ambiente de rede, por exemplo, de uma rede corporativa para uma rede pessoal.
-
-
Verifique a configuração do Composer e use o repositório central oficial diretamente.
composer config -g --list composer config -g repo.packagist composer https://packagist.org -
Exclua o pacote do Composer instalado, reinstale-o e limpe o cache do Composer.
-
Exclua o diretório de cache local:
rm -rf ~/.composer -
Limpe o cache do Composer:
composer clear-cache
-
-
Se o erro persistir, verifique os logs detalhados do Composer:
composer install --verbose
Pergunta 12: Ao executarcomposer para instalar o pacote do SDK da Alibaba Cloud, o seguinte erro é relatado: "Your requirements could not be resolved to an installable set of packages.".
Esse erro pode ocorrer por vários motivos. Os exemplos a seguir podem ajudar você a resolver o problema.
Exemplo 1
Mensagem de erro:
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Root composer.json requires alibabacloud/cloudauth-20190307 3.4.1, found alibabacloud/cloudauth-20190307[dev-master, 1.0.0, ..., 1.0.7, 2.0.0, ..., 2.9.1, 3.0.0, ..., 3.3.0] but it does not match the constraint.
Installation failed, reverting ./composer.json and ./composer.lock to their original content.
Possíveis causas:
O número de versão especificado, como
3.4.1, pode não existir ou não ter sido lançado.A fonte de espelhamento de tráfego do Composer que você está usando não foi sincronizada com a versão mais recente do pacote.
Um problema de rede impede que o pacote seja obtido corretamente.
Soluções:
-
Execute o comando a seguir para visualizar todas as versões disponíveis do pacote:
composer show alibabacloud/XXXXXX --allModifique a versão no arquivo
composer.jsonpara uma versão disponível e executecomposer updatepara reinstalar. -
Altere a fonte de espelhamento de tráfego do
Composer.-
Execute o comando a seguir para alternar para a fonte de espelhamento oficial do Packagist:
composer config -g repo.packagist composer https://repo.packagist.org -
Alterne para a fonte de espelhamento acelerada fornecida pela Alibaba Cloud na China continental:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
Após a alteração, limpe o cache e reinstale:
composer clear-cache composer install -
-
Verifique se sua conexão de rede está normal e tente usar um ambiente de rede estável. Se a instalação ainda falhar, tente baixar manualmente o arquivo do pacote no formato
.zipou.tar.gze instale-o usando um caminho local:composer require alibabacloud/XXXXXX@dev --prefer-source
Exemplo 2
Mensagem de erro:
composer could not delete the root package (root/mr.appteam/version) defaulting to ... see https://getcomposer.org/root-version
Running composer update alibabacloud/cloudauth-20190307
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Root composer.json requires alibabacloud/cloudauth-20190307 3.9.2 -> satisfiable by alibabacloud/cloudauth-20190307[3.9.2].
- alibabacloud/cloudauth-20190307 3.9.2 requires alibabacloud/tea-oss-utils ^0.3.1 -> satisfiable by alibabacloud/tea-oss-utils[0.3.1].
- alibabacloud/tea-oss-utils[0.3.0, ..., 0.3.1] require guzzlehttp/psr7 ^1.0 -> found guzzlehttp/psr7[1.0.0, ..., 1.9.1] but the package is fixed
Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.
Installation failed, reverting ./composer.json and ./composer.lock to their original content.
[root@ebs-171291 mrrapp.com]#
Causa:
Ao instalar alibabacloud/cloudauth-20190307:3.9.2, sua dependência alibabacloud/tea-oss-utils:0.3.1 exige que guzzlehttp/psr7 esteja na versão [1.0.0,...,2.0.0). No entanto, a versão atualmente instalada de guzzlehttp/psr7 está fixada em [1.0.0,..,1.9.1], o que causa um conflito de dependências.
Soluções:
-
Force uma atualização da versão da dependência.
composer require alibabacloud/cloudauth-20190307 3.9.2 -W -
Na seção
requiredo arquivocomposer.json, adicione uma restrição de versão para guzzlehttp/psr7, como "guzzlehttp/psr7": "^1.0". Em seguida, execute o comando a seguir para atualizar as dependências.composer update -
Exclua o
composer.locke execute o comando a seguir para reinstalar.composer install --prefer-source
Problema 12: Uma mensagem de erro "cURL error 60: SSL certificate problem: unable to get local issuer certificate" é relatada ao chamar uma OpenAPI.
Causas:
Pacote de certificados CA não baixado: O sistema não possui um arquivo de certificado CA confiável, o que impede o cURL de verificar o certificado SSL.
A configuração cURL do PHP não especifica um caminho de certificado CA: O parâmetro
curl.cainfoouopenssl.cafilenão está configurado corretamente no arquivophp.ini.Serviço PHP não reiniciado: O serviço PHP não foi reiniciado após a modificação do arquivo
php.ini, portanto, a configuração não entrou em vigor.
Soluções:
-
Baixe um certificado CA confiável, como o Mozilla CA Certificate Store. Salve o arquivo
cacert.pembaixado em um diretório fixo.ImportanteCertifique-se de que o caminho do arquivo não contenha caracteres chineses ou especiais para evitar possíveis problemas.
-
Configure o caminho do certificado SSL para o PHP.
Abra o arquivo de configuração do PHP
php.ini. Localize o arquivo executando o comandophp --ini.-
No arquivo
php.ini, localizecurl.cainfo, defina seu valor como o caminho absoluto do certificado CA e remova o ponto e vírgula (;) do início do item de configuração.# Example curl.cainfo = "D:\path\to\cacert.pem" openssl.cafile = "D:\path\to\cacert.pem"Salve o arquivo após a edição.
NotaSubstitua o caminho
D:\path\to\cacert.pemno exemplo pelo caminho absoluto real do seu certificado CA baixado.
Reinicie o serviço PHP.
Problema 13: A instalação do Composer falha com a mensagem "the package is fixed to version 1.0.3 (lock file version) or ralouphie/mimey 2.1.0 requires php ^5.4|^7.0 your php version (8.2.27) does not satisfy that requirement."
Causas
-
Conflitos de versão:
As versões de algumas dependências estão bloqueadas pelo arquivo
composer.lock.Por padrão, o Composer não atualiza automaticamente esses pacotes de dependência bloqueados.
Por exemplo,
alibabacloud/cloudauth-20190307requer a versão2.0.1doalibabacloud/openplatform-20191219, mas a versão bloqueada atual é1.0.3.
-
Incompatibilidade de versão do PHP:
Você está usando o PHP 8.2, mas alguns pacotes de dependência suportam apenas PHP 5.4 a 7.x.
Por exemplo,
ralouphie/mimey 2.1.0suporta apenas PHP^5.4|^7.0, mas seu ambiente é PHP8.2.27.
Soluções
-
Force uma atualização de todas as dependências relacionadas:
composer update --with-all-dependencies # Or the short form: composer update -WNotaEsta operação atualiza recursivamente todos os pacotes de dependência relacionados, incluindo versões antigas bloqueadas pelo
composer.lock, para ajudar a resolver conflitos de versão. -
Limpe o
composer.locke ovendor/e reinstale. Isso é recomendado para confusão grave de dependências.rm composer.lock vendor/ composer clear-cache composer installImportanteEsta operação remove todas as dependências instaladas.
Se um pacote de dependência não oferecer suporte ao PHP 8, faça downgrade temporário para uma versão anterior do PHP para garantir compatibilidade.
Problema 14: Script @php think service:discover handling the post-autoload-dump event returned with error code 255.
Causas
Após executar
composer installouupdate, o Composer falha ao executar o comando de descoberta automática de serviços do ThinkPHP,php think service:discover. Isso interrompe todo o processo de instalação.Estouro de memória ou outros erros.
Soluções
-
Desative temporariamente o script de descoberta de serviços. Para isso, modifique o arquivo
composer.jsonno diretório raiz do projeto:{ "scripts": { "post-autoload-dump": "@php think service:discover" } }Altere para:
{ "scripts": { "post-autoload-dump": "@echo Skipping 'php think service:discover'" } }Execute
composer dump-autoloadnovamente. -
Aumente o limite de memória do PHP. Para isso, modifique a seguinte configuração no arquivo
php.ini:memory_limit = 512M
Problema 15: Undefined property: Darabonba\OpenApi\Models\Config::$tlsMinVersion
Causa: A versão do alibabacloud/darabonba-openapi é anterior a 0.2.14.
Solução: Execute o comando a seguir para atualizar o alibabacloud/darabonba-openapi para a versão 0.2.14 ou superior.
composer require alibabacloud/darabonba-openapi >=0.2.14
Suporte técnico
As soluções para os problemas anteriores têm como objetivo ajudar você a usar o SDK da Alibaba Cloud com mais facilidade. Se encontrar outros problemas, entre em contato conosco de uma das seguintes maneiras:
Envie um ticket: Página de envio de tickets da Alibaba Cloud.
Se tiver necessidades ou feedback relacionados, participe do grupo DingTalk para entrar em contato com o suporte técnico da Alibaba Cloud. O número do grupo é 60965016010.