[Resolvido] Bug após atualização para WHMCS v7.5

Este tópico contém respostas, possui 8 vozes e foi atualizado pela última vez por  Henrique 2 meses, 3 semanas atrás.

  • Autor
    Posts
  • #10742

    Anderson
    Participante

    Prezados, bom dia.

    Vejam se alguém mais está tendo esse problema: após o upgrade para o WHMCS v7.5, meus crons da madrugada começaram a não completar corretamente. Tentei inclusive rodar o cron manualmente com a opção de DEBUG : “php -q /home/cubix/whmcsdata/crons/cron.php all -F -vvv”

    No passo 23/25 (WHMCS Updates), ele trava.

    Tentei desativar módulos, tirar templates customizados, nada funcionou.

    Quando ativei no WHMCS as funções de DEBUG, a mensagem de erro apresentou algo mais detalhado, dizendo assim:

    “TypeError: Argument 1 passed to GuzzleHttp\Ring\Client\StreamHandler::__invoke() must be of the type array, object given, called in /home/WHMCS/cliente.cubix.host/modules/gateways/gofasgerencianetboleto/sdk/vendor/guzzlehttp/guzzle/src/Client.php on line 277 and defined in /home/WHMCS/cliente.cubix.host/modules/gateways/gerencianet_lib/gerencianet/guzzlehttp/ringphp/src/Client/StreamHandler.php:26”

    O Cron da madrugada só voltou a funcionar quando desativei o gateway do GerenciaNET boleto.

    É possível entender o que aconteceu? Agora estou com receio de deixar o gateway de boleto ativado e ninguém conseguir gerar.

    Ats,
    Anderson

  • #10745

    Gofas
    Participante

    Oi Anderson,
    esse erro está sendo retornado pela SDK da Gerencianet que compõe o módulo, provavelmente alguma incompatibilidade entre a versão do php, a partir do WHMCS v5 é ideal roda-lo em PHP 7.0 ou superior.

    Verifique a versão do módulo que você está utilizando, melhoramos algumas coisas na versão 1.2.1 do módulo, inclusive a diferença de valores na confirmação de pagamento citada neste tópico. Agora se o valor pago foi maior que o valor da fatura, é adicionado um novo item à fatura com a diferença de valores e a transação gravada na fatura fica com valor exato ao da fatura.

    Você pode baixar aqui

  • #10746

    Anderson
    Participante

    Olá Maurício, td bem?

    Esqueci de mencionar. Tanto antes quanto depois do upgrade para o WHMCS v7.5, eu estou usando a versão 7.0 do PHP.

    Não sei agora dizer exatamente se eu estava na versão 1.2 ou 1.2.1 deste módulo. De qualquer forma, estarei testando esse 1.2.1 para ver se algo muda no comportamento.

    Alguém com a versão nova v7.5 está enfrentando esse problema???

  • #10759

    Gofas
    Participante

    Teste esta versão do módulo, por favor, eu mudei a SKD para uma versão anterior:
    https://goo.gl/tWcMAk

  • #10761

    Anderson
    Participante

    Eu instalei ontem a 1.2.1 e estou deixando alguns dias para testar, mas ontem o Cron rodou sem problemas, com o gateway do GerencianNET ativado, então aparentemente o ajuste já do 1.2.1 pode ter resolvido.

    Mesmo assim acha que vale a pena substituir por esse de hoje? Eu pensei em fazer mais testes nos próximas dias.

  • #10763

    Leonardo
    Participante

    Estou com o mesmo problema mais como o amigo Anderson eu não tive a mesma sorte fiz os mesmos passos e os erros continuam igual relatado pelo amigo…

  • #10765

    Leonardo
    Participante

    Na sua versão citada ai Gofas da o seguinte erro:

    modules/gateways/gofasgerencianetboleto.php was encoded by the ionCube Encoder for PHP 5.6 and cannot run under PHP 7.1 or later.<br />
    Please ask the provider of the script to provide a version encoded with the ionCube Encoder for PHP 7.1. in Unknown:0<br />

  • #10766

    Anderson
    Participante

    Leonardo, na versão 1.2.1 de 10/04 funcionou corretamente hoje também o Cron. Minha versão do PHP é 7.0

    Você ligou o debug do whmcs e rodou o job manualmente no shell, pra ver qual erro aparece? Pode ser outro módulo também…

  • #10767

    Anderson
    Participante

    Apesar de tudo estar funcionando, o WHMCS v7.5 agora tem uma funcionalidade em UTILITIES > SYSTEM > PHP VERSION COMPATIBILITY onde ele analisa se o WHMCS e seus módulos instalados são compatíveis com as diferentes versões de PHP, e o módulo do GerenciaNET 1.2.1 aqui aparece com um erro no Report.

    Não sei se impacta em algo na prática.

  • #10768

    Leonardo
    Participante

    Interessante Anderson o meu UTILITIES > SYSTEM > PHP VERSION COMPATIBILITY da seguinte mensagem — Not Found

    The requested URL /admin/utilities/system/php-compat was not found on this server.

    Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

    observação baixei o whmcs 7.5.0 da pagina e fiz a instalação full, kkkk…

  • #10769

    Leonardo
    Participante

    Anderson sobre os erro, andei conversando com o Mauricio ontem e acho que o negocio comigo é a codificação do php, pois uso o php 7.1 e não o que vc usa o 7.0, mais acho que o Mauricio vai consegui codificar em php 7.1 🙂 ai consigo testar, aguardando um retorno dele.
    mais obrigado amigo pela atenção e dicas, bom dia.

  • #10770

    Anderson
    Participante

    Há algum bug no WHMCS pois eu percebi que a formação da URL não fica correta, apesar da minha página abrir.

    Aqui está: https://cliente.cubix.host/PASTA_ADM/index.php/PASTA_ADM/utilities/system/php-compat

    Totalmente diferente de todas as outras. Quando eu tento remover um pedaço de “PASTA_ADM/index.php/”, aí cai no mesmo erro que você disse.

    Se eu pudesse colocar anexos aqui, mostraria como é a tela desses checks.

  • #10771

    Anderson
    Participante

    De nada, disponha. No que eu puder ajudar, ajudo.

  • #10772

    Leonardo
    Participante

    hummm, realmente amigo Andreson outros link tive que arrumar direto no php que o chama mais esse nem parei ainda para debugar onde esta, pois to mais preocupado no momento com o gerencianet boleto 🙁 pois final do mes esta chegando e ai a dor de cabeça começa tenho que rezar pro Mauricio conseguir algo até o final do mes.. kkkk 🙂

  • #10773

    Anderson
    Participante

    Voltar temporariamente para a 7.0 não é uma opção? Normalmente é uma ação que não impacta

  • #10774

    Leonardo
    Participante

    No meu caso não dá, pois ja codifiquei o restante inteiro do sistema para o php 7.1 levei um final de semana inteiro, kkkk e retroceder agora é dificil, pior que esta faltando só isso do boleto o resto se encaixou perfeitamente no php 7.1, claro com algumas dores de cabeça mais solucionáveis.

  • #10775

    Fábio
    Participante

    Olá Gofas e Demais amigos. A nova versão passada aqui pelo Gofas resolveu o problema que eu estava passando. Não estava confirmando as faturas pagas. Após baixar a versão colocada aqui no fórum está tudo funcionando bem. Atenção. O PHP usado aqui é o 5.6 que é suportado pelo WHMCS 7.4. Talvez descer um pouco a versão seja uma solução. Abraços!

  • #10776

    Anderson
    Participante

    Particularmente, não acredito que “downgrade” seja uma solução aceitável. Maurício, estou torcendo pro módulo poder em breve ser utilizável em 7.1 e 7.2 🙂

  • #10777

    Leonardo
    Participante

    Concordo com o Anderson, afinal tenho todo meu sistema em cima do php 7.1 e funcionando, a acredito como dito acima que seja somente uma questão de codificação do gerencianet boleto funcionar no php 7.1 coisa que o Mauricio já deve estar analisando 🙂

  • #10779

    Gofas
    Participante

    Pessoal,
    acredito que teremos de abandonar o suporte para versões do PHP menores que 7.1, principalmente por causa das atualizações de compatibilidade com versões anteriores do ioncube loader introduzida no WHMCS 5.

    Temos uma nova versão do módulo candidata a substituir a atual na página do módulo, vamos atualizar o changelog e fornecer link para ambas as versões, uma compatível com WHMCS 6.3 até 7.4 e php 5.6 ao 7.0, a outra compatível com WHMCS 5+ e php 7.1+.

    Por favor, quem quiser testar e confirmar que todos os erros foram resolvidos, a versão compatível com WHMCS 5+ e php 7.1+ pode ser baixada aqui:
    https://goo.gl/p3Fmmk

  • #10780

    Leonardo
    Participante

    Ok, Mauricio ja vou testar e lhe retorno aqui, desde já obrigado.

  • #10781

    Leonardo
    Participante

    Mauricio funcionou a codificação sem mais dar erro, mais agora voltou aquele erro das SDK, mandei o log para vc dar uma olhada, no antigo nao dava erro de SDK e sim de codificação php 5.6 / php 7.1 arrumado isso ai começa a pegar nas SDKs.

  • #10783

    Leonardo
    Participante

    Anderson, você esta recebendo a confirmação “callback” certinho e o whmcs esta dando baixa nas faturas pagas ???? aqui parou isso também :/

  • #10784

    Anderson
    Participante

    A maioria dos nossos clientes gosta de PayPal e TED, os poucos que usam boleto não tiveram faturas esses dias. Quando houver uma baixa, eu avisarei aqui. Abs

  • #10785

    Leonardo
    Participante

    Obrigado, amigo.

  • #10786

    Leonardo
    Participante

    Parece que a whmcs.com achou o problema, Mauricio.. olha ———->

    Encoded File Loading – In WHMCS v7.5.1 you have the option to control the Encoded File Loading feature. This feature was introduced in v7.5.0 to mitigate the possibility of fatal errors resulting from the inclusion of incompatible ionCube encoded files. Disabling this feature may be needed for some custom ionCube files. For example, the ionCube Online Encoder product currently produces files whose embedded content does not follow the same conventions of other encoded files and thus may trigger a negative evaluation

  • #10790

    Guilherme
    Participante

    Olá Mauricio, como vai ?

    Conseguiu alguma solução para o Erro ?

    No php 7.0 esta dando erro de ioncube

    No php 7.1 da erro Opsss e com o plugin informado acima , erro 500

    Não tive como testar no php 7.2 pois a Hostgator não tem esta versão =/

    Notei que na 7.0 também não atualiza a fatura quando o boleto é pago.

  • #10791

    Leonardo
    Participante

    Realmente Guilherme estou com os mesmos problemas, tô me virando nos 30 criando boletos direto no gerencia a mão aguardando um retorno do Maurício.

  • #10800

    Gofas
    Participante

    Pessoal, para quem teve problemas com o Ioncube Loader, podem baixar a verão mais recente desencriptada neste link: https://goo.gl/45aopSs
    Para quem precisar instalar uma versão anterior, basta mudar o nº da versão no URL de download da página do módulo, exemplo:

    https://gofas.net/download/?file=gofasgerencianetboleto/1.2.2/gofasgerencianetboleto.zip
    https://gofas.net/download/?file=gofasgerencianetboleto/1.2.1/gofasgerencianetboleto.zip
    https://gofas.net/download/?file=gofasgerencianetboleto/1.1.1/gofasgerencianetboleto.zip

  • #10805

    Leonardo
    Participante

    Mauricio, esse novo arquivo também resolve o problema do SDK que trava o cron diário do whmcs fazendo ele não rodar ????

    • #10806

      Gofas
      Participante

      Deve resolver, mas se você tiver esse problema novamente pode substituir a pasta sdk, dentro da pasta gofasgerencianetboleto, pela pasta com mesmo nome e localização, de versões anteriores do módulo.

  • #10807

    Leonardo
    Participante

    Instalei esse sua ultima, e continuo dando OPS… 🙁

  • #10809

    Guilherme
    Participante

    Olá Mauricio, boa tarde.

    Atualizei para a versão 1.2.2.

    Não obtive erros no WHMCS e a geração de boletos esta ok.

    Todos os alertas de incompatibilidade sumiram.

    A unica coisa que continuou foi o erro da Cron.

    Failed loading /opt/ioncube/ioncube_loader_lin_7.0.so:  /opt/ioncube/ioncube_loader_lin_7.0.so: undefined symbol: zend_ce_division_by_zero_error
    Site error: the <a href="http://www.ioncube.com">ionCube</a> PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.
    
    Please visit <a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a> for install assistance.

    Vi que pediu para substituir a pasta SDK porem não solucionou o erro =/
    Alguma ideia ?

  • #10810

    Leonardo
    Participante

    Guilherme estou com o mesmo problema seu, sumiu os erros de incompatibilidade mais meu cron diário não roda nem por decreto. Só se eu desativar o gateway do boleto. 🙁

  • #10820

    Guilherme
    Participante

    Olá Mauricio, boa noite amigo.

    Algum retorno sobre o problema ?

    Como a cron não roda, tem clientes meus que foram suspensos por falta de pagamento.

    Não sei se isso aconteceu contigo Leonardo.

    Minhas faturas, mesmo estando pagas no gerenciane, não são atualizadas no WHMCS

  • #10821

    Leonardo
    Participante

    Guilherme, sim tenho verificado manualmente, um trabalhão, mais fazer oque. 🙁

  • #10822

    Anderson
    Participante

    Aqui tive que manter a versão do PHP 7.0 para que tudo funcionasse sem problemas. Não poderei ir para 7.1 ou 7.2 enquanto não puder rodar um Cron decentemente.

  • #10823

    Guilherme
    Participante

    Anderson, bom dia.

    O meu esta na 7.0 porem, a cron não roda.
    Qual a versão do Plugin você esta usando ?

  • #10824

    Anderson
    Participante

    Parei na versão 1.2.1 , não pretendo realizar o upgrade até estar 100% seguro que tudo funciona.

    Se eu tivesse ambiente de desenvolvimento, faria testes mais aprofundados.

  • #10825

    Guilherme
    Participante

    Já tente todas as versões e não sei porque, sempre recebo este erro.

    Failed loading /opt/ioncube/ioncube_loader_lin_7.0.so:  /opt/ioncube/ioncube_loader_lin_7.0.so: undefined symbol: zend_ce_division_by_zero_error
    Site error: the <a href="http://www.ioncube.com">ionCube</a> PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.
    
    Please visit <a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a> for install assistance.
    

    Meu php esta 7.0 e o whmcs 7.5.1
    Acabei de inserir o 1.1.1 e ocorre o mesmo erro.

    Sinceramente esgotei minhas possibilidades de teste

  • #10826

    Anderson
    Participante

    Seu IonCube está na última versão? a 10 ?

  • #10827

    Guilherme
    Participante

    Sim

    Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
        with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.2.1, Copyright (c) 2002-2018, by ionCube Ltd.
    
  • #10828

    Anderson
    Participante

    Realmente bem esquisito. O meu está WHMCS v7.5.1 , Gofas boleto v1.2.1 e ionCube 10.

  • #10829

    Guilherme
    Participante

    Pois é.

    Esta bem complicado =/

    Espero que o Mauricio tenha sucesso em breve com as correções.

  • #10833

    Anderson
    Participante

    Fiz mais alguns testes, e eis os resultados:
    Troquei a minha versão v1.2.1 pela versão v1.2.2 não-encriptada, para tirar o ionCube da equação. Afinal de contas, o módulo precisa funcionar mesmo sem ele ativado. Se tudo estiver funcionando, depois podemos voltar a utilizar a versão com ionCube.

    Fiz diversos testes, todos na versão v1.2.2 do módulo e WHMCS v7.5.1.
    – Todos os testes que fizemos com o PHP 7.0.30 rodaram perfeitamente, inclusive o Cron
    – Quando ativei o PHP 7.1, a princípio ele parecia funcionar, mas por algum motivo, cerca de 5 a 10 minutos depois ele passou a dar um Oops na tela. Ativei o debug, e copiarei o resultado abaixo.
    – Quando ativei o PHP 7.2, o caso foi o mesmo do 7.1 acima. Erro Oops, com mesma mensagem de erro no debug

    Segue o erro que apareceu:

    Whoops\Exception\ErrorException: Cannot use lexical variable $eventName as a parameter name in /home/whmcs/public_html/modules/gateways/gerencianet_lib/gerencianet/guzzlehttp/guzzle/src/Event/Emitter.php:48
    Stack trace:
    #0 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Utility/Error/Run.php(0): WHMCS\Utility\Error\Run->handleError(64, 'Cannot use lexi...', '/home/whmcs/p...', 48)
    #1 [internal function]: WHMCS\Utility\Error\Run->handleShutdown()
    #2 {main}

    Maurício, pelo que li em fóruns, esse erro acontece quando a versão do Guzzle utilizada está defasada. Isso pode ser melhorado no módulo? Pode ser isso que está impactando o Cron dos outros colegas acima?

    Por fim, mantive a versão v1.2.2 mas tive que voltar para o PHP 7.0.30 para não ficar com a emissão indisponível

    Abraços

    OBS: Caso estejam tendo dificuldades pra ver o output do Cron, minha recomendação:
    – Trocar o comando do Cron Job para “/usr/local/bin/php /home/whmcs/whmcsdata/crons/cron.php -vvv >> /home/whmcs/whmcsdata/crons/whmcs_cron_log.txt 2>&1” (Isso fará que o Cron solte seu output num arquivo do servidor)
    – Ative todos os logs em OPÇÕES > CONFIGURAÇÕES > OUTROS > “Exibir Erros” e “Log Erros”
    – Se os logs acima não mostrarem o motivo da falha, tentem o LOG DE MÓDULOS em UTILITÁRIOS > LOG > LOG DE MÓDULOS, mas cuidado com esse porque se esquecer ligado, deixa até o sistema lento depois

  • #10834

    Anderson
    Participante

    ps1: quando ativei o PHP 7.1 e 7.2, pelos minutos que funcionou, até boleto estava gerando normalmente.

    ps2: se forem usar aquele comando CRON acima , cuidado pra adaptar corretamente para seus paths. Podem ser diferentes dos meus

  • #10836

    Anderson
    Participante

    Bom, agora náo sei porque, do nada, comecei a ter os erros no Cron (tb parecem ser do GuzzleHTTP), e nem dando rollback (seja no plugin todo ou pasta SDK) funciona.

    Segue abaixo o erro completo:

    <h1>Oops!</h1>
    <h2>Something went wrong and we couldn’t process your request.</h2>
    <p>Please go back to the previous page and try again.</p>
    <p class=”debug”>TypeError: Argument 1 passed to GuzzleHttp\Ring\Client\StreamHandler::__invoke() must be of the type array, object given, called in /home/whmcs/public_html/modules/gateways/gofasgerencianetboleto/sdk/vendor/guzzlehttp/guzzle/src/Client.php on line 277 and defined in /home/whmcs/public_html/modules/gateways/gerencianet_lib/gerencianet/guzzlehttp/ringphp/src/Client/StreamHandler.php:26<br />
    Stack trace:<br />
    #0 /home/whmcs/public_html/modules/gateways/gofasgerencianetboleto/sdk/vendor/guzzlehttp/guzzle/src/Client.php(277): GuzzleHttp\Ring\Client\StreamHandler->__invoke(Object(GuzzleHttp\Psr7\Request), Array)<br />
    #1 /home/whmcs/public_html/modules/gateways/gofasgerencianetboleto/sdk/vendor/guzzlehttp/guzzle/src/Client.php(125): GuzzleHttp\Client->transfer(Object(GuzzleHttp\Psr7\Request), Array)<br />
    #2 /home/whmcs/public_html/modules/gateways/gofasgerencianetboleto/sdk/vendor/guzzlehttp/guzzle/src/Client.php(131): GuzzleHttp\Client->requestAsync(‘get’, Object(GuzzleHttp\Psr7\Uri), Array)<br />
    #3 /home/whmcs/public_html/modules/gateways/gofasgerencianetboleto/sdk/vendor/guzzlehttp/guzzle/src/Client.php(89): GuzzleHttp\Client->request(‘get’, ‘https://pki.whm…’, Array)<br />
    #4 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): GuzzleHttp\Client->__call(‘get’, Array)<br />
    #5 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->getUrl(‘https://pki.whm…’)<br />
    #6 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->getPathFromKeyserver(‘certs.json’)<br />
    #7 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->getCertMetadata()<br />
    #8 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->reloadCrls()<br />
    #9 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->getCrlForCertificate(Object(WHMCS\Installer\Composer\Certificate))<br />
    #10 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->validateCertificateNotRevoked(Object(WHMCS\Installer\Composer\Certificate))<br />
    #11 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->getTrustedCertificate(‘515FCBEB9958DA4…’, 2)<br />
    #12 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->validateCertificateSignatureIsTrusted(Object(WHMCS\Installer\Composer\Certificate))<br />
    #13 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/CertificateManager.php(0): WHMCS\Installer\Composer\CertificateManager->getTrustedCertificate(‘0C12A820D7DD9ED…’, 1)<br />
    #14 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/PackagesFile.php(0): WHMCS\Installer\Composer\CertificateManager->getValidCodeSigningCertificateContent(‘0C12A820D7DD9ED…’)<br />
    #15 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/WhmcsRepository.php(0): WHMCS\Installer\Composer\PackagesFile->validateNotificationSignatures(Array)<br />
    #16 /home/whmcs/public_html/vendor/composer/composer/src/Composer/Repository/ComposerRepository.php(462): WHMCS\Installer\Composer\WhmcsRepository->fetchFile(‘https://release…’, ‘UpdatePackagesD…’)<br />
    #17 /home/whmcs/public_html/vendor/composer/composer/src/Composer/Repository/ComposerRepository.php(256): Composer\Repository\ComposerRepository->loadRootServerFile()<br />
    #18 /home/whmcs/public_html/vendor/composer/composer/src/Composer/DependencyResolver/Pool.php(99): Composer\Repository\ComposerRepository->hasProviders()<br />
    #19 /home/whmcs/public_html/vendor/composer/composer/src/Composer/Installer.php(402): Composer\DependencyResolver\Pool->addRepository(Object(WHMCS\Installer\Composer\WhmcsRepository), Array)<br />
    #20 /home/whmcs/public_html/vendor/composer/composer/src/Composer/Installer.php(228): Composer\Installer->doInstall(Object(Composer\Repository\InstalledArrayRepository), Object(Composer\Repository\CompositeRepository), Object(Composer\Repository\PlatformRepository), Array, false)<br />
    #21 /home/whmcs/public_html/vendor/composer/composer/src/Composer/Command/UpdateCommand.php(173): Composer\Installer->run()<br />
    #22 /home/whmcs/public_html/vendor/symfony/console/Command/Command.php(259): Composer\Command\UpdateCommand->execute(Object(Symfony\Component\Console\Input\ArrayInput), Object(WHMCS\Installer\Composer\MonologBufferedOutputWrapper))<br />
    #23 /home/whmcs/public_html/vendor/symfony/console/Application.php(844): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArrayInput), Object(WHMCS\Installer\Composer\MonologBufferedOutputWrapper))<br />
    #24 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/WhmcsComposerApplication.php(0): Symfony\Component\Console\Application->doRunCommand(Object(Composer\Command\UpdateCommand), Object(Symfony\Component\Console\Input\ArrayInput), Object(WHMCS\Installer\Composer\MonologBufferedOutputWrapper))<br />
    #25 /home/whmcs/public_html/vendor/symfony/console/Application.php(192): WHMCS\Installer\Composer\WhmcsComposerApplication->doRunCommand(Object(Composer\Command\UpdateCommand), Object(Symfony\Component\Console\Input\ArrayInput), Object(WHMCS\Installer\Composer\MonologBufferedOutputWrapper))<br />
    #26 /home/whmcs/public_html/vendor/composer/composer/src/Composer/Console/Application.php(189): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArrayInput), Object(WHMCS\Installer\Composer\MonologBufferedOutputWrapper))<br />
    #27 /home/whmcs/public_html/vendor/symfony/console/Application.php(123): Composer\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArrayInput), Object(WHMCS\Installer\Composer\MonologBufferedOutputWrapper))<br />
    #28 /home/whmcs/public_html/vendor/composer/composer/src/Composer/Console/Application.php(99): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArrayInput), Object(WHMCS\Installer\Composer\MonologBufferedOutputWrapper))<br />
    #29 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/ComposerWrapper.php(0): Composer\Console\Application->run(Object(Symfony\Component\Console\Input\ArrayInput), Object(WHMCS\Installer\Composer\MonologBufferedOutputWrapper))<br />
    #30 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/ComposerWrapper.php(0): WHMCS\Installer\Composer\ComposerWrapper->update()<br />
    #31 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/ComposerUpdate.php(0): WHMCS\Installer\Composer\ComposerWrapper->getLatestVersion()<br />
    #32 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/ComposerUpdate.php(0): WHMCS\Installer\Composer\ComposerUpdate->WHMCS\Installer\Composer\{closure}()<br />
    #33 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Composer/ComposerUpdate.php(0): WHMCS\Installer\Composer\ComposerUpdate->doComposerCommand(Object(Closure))<br />
    #34 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Installer/Update/Updater.php(0): WHMCS\Installer\Composer\ComposerUpdate->getLatestVersion(true)<br />
    #35 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Cron/Task/CheckForWhmcsUpdate.php(0): WHMCS\Installer\Update\Updater->fetchComposerLatestVersion()<br />
    #36 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Scheduling/Task/AbstractTask.php(0): WHMCS\Cron\Task\CheckForWhmcsUpdate->__invoke()<br />
    #37 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Scheduling/Task/AbstractTask.php(0): WHMCS\Scheduling\Task\AbstractTask->execute()<br />
    #38 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Cron/Console/Command/AbstractCronCommand.php(0): WHMCS\Scheduling\Task\AbstractTask->run()<br />
    #39 /home/whmcs/public_html/vendor/whmcs/whmcs-foundation/lib/Cron/Console/Command/AbstractCronCommand.php(0): WHMCS\Cron\Console\Command\AbstractCronCommand->executeCollection(Object(WHMCS\Scheduling\Task\Collection))<br />
    #40 /home/whmcs/public_html/vendor/symfony/console/Command/Command.php(259): WHMCS\Cron\Console\Command\AbstractCronCommand->execute(Object(WHMCS\Cron\Console\Input\CliInput), Object(Symfony\Component\Console\Output\ConsoleOutput))<br />
    #41 /home/whmcs/public_html/vendor/symfony/console/Application.php(844): Symfony\Component\Console\Command\Command->run(Object(WHMCS\Cron\Console\Input\CliInput), Object(Symfony\Component\Console\Output\ConsoleOutput))<br />
    #42 /home/whmcs/public_html/vendor/symfony/console/Application.php(192): Symfony\Component\Console\Application->doRunCommand(Object(WHMCS\Cron\Console\Command\AllCommand), Object(WHMCS\Cron\Console\Input\CliInput), Object(Symfony\Component\Console\Output\ConsoleOutput))<br />
    #43 /home/whmcs/public_html/vendor/symfony/console/Application.php(123): Symfony\Component\Console\Application->doRun(Object(WHMCS\Cron\Console\Input\CliInput), Object(Symfony\Component\Console\Output\ConsoleOutput))<br />
    #44 /home/whmcs/whmcsdata/crons/cron.php(0): Symfony\Component\Console\Application->run(Object(WHMCS\Cron\Console\Input\CliInput), Object(Symfony\Component\Console\Output\ConsoleOutput))<br />
    #45 {main}</p></div>
    </body>

    Abs

  • #10854

    Guilherme
    Participante

    Olá Mauricio, boa tarde.

    Algum retorno sobre o caso ?

    Tenho acesso as versões PHP 7.0, 7.1 e 7.2
    Porem o erro permanece em todas.

  • #10858

    Gofas
    Participante

    Aqui eu sempre utilizei no Ubuntu, sem WHM/cPanel, a última versão foi desenvolvida já sendo testada em php7.2 e testada no php 5.6 ao 7.2, funciona perfeitamente, apenas no php7.2 que só funciona especificamente com WHMCS 7.5.1.

    Recentemente eu instalei um WHM local versão 11.70.0.48 para iniciar o desenvolvimento de uma integração com cPanel/WHM, e com a configuração padrão do do WHM passei por conflitos semelhantes aos citados nesse tópico, mas foi só rodar system update no EasyApache4, ir ativando os pacotes mais recentes no EasyApache4e e as extensões no MultiPHP INI Editor, que resolveu. Se quiserem comparar, segue
    nossa configuração, não precisa nem lembrar né: fazer backup antes de qualquer alteração.

    php.ini:

    pacotes ativados no servidor:

    um perfil do EasyApache4 que pode ser importado(;):

  • #10874

    Guilherme
    Participante

    Boa noite Mauricio.

    Estou te enviando abaixo as informações que estou recebendo na versão 1.2.2 com php 7.2 e também segue meu perfil do easyapache4 (Já na ultima versão)

    https://www.dropbox.com/sh/wbjf9vnveyjo6tj/AADX6mDbCOC69OSBeLPmVljza?dl=0

    Erro de compatibilidade dentro do WHMCS
    http://prntscr.com/juoz1i

  • #10936

    Leonardo
    Participante

    Boa noite, Mauricio, hoje passei por uma inesperada,foi o seguinte, tenho um cliente que paga por boleto mais o boleto dele esta vencido desde 10/06 e hoje 06/07 ele resolveu gerar novo boleto para pagamento mais por minha surpresa o modulo de boleto não somou as taxas e juros do mês passado assim como os dias de atraso, somando somente 2 dias de atraso, como se o modulo tivesse começado a contar os juros e taxas a partir do 01/07… no modulo antigo isso não havia acontecido fazendo a soma normal….

  • #10938

    Anderson
    Participante

    Apenas para atualizar aqui: estou com PHP 7.2, WHMCS 7.5.1 e GofasGerenciaNET Boleto v1.2.2

    O Cron está funcionando normalmente. Realmente parece que tinha algo a ver com o WHMCS Updates do Cron, porque separei num horário fora do cron diário de madrugada, e nunca mais vi erro acontecer

  • #10939

    Leonardo
    Participante

    Anderson, você criou outro cron fora do horário que esta no whmcs é isso ???

  • #10942

    Leonardo
    Participante

    Anderson, mais com isso a cron diaria continua a ser executada no horario definido, ou a cada 8 minutos ??

  • #10943

    Leonardo
    Participante

    Anderson, coloquei aqui veremos amanha, retorno para ver se realmente tua solução salvou a patria. kkkkkkk abraço.

  • #10944

    Anderson
    Participante

    Se não funcionar me avisa, pois ainda tenho outra carta na manga: criei um jeito de logar em arquivo o output de erro do Cron da madrugada, pra ajudar as análises de debug

    Abs

  • #10945

    Anderson
    Participante

    Não tinha visto a outra pergunta.
    Na verdade o que postei resulta em 8 horas, e não 8 minutos.

    Como o Cron diário funciona: se você colocou pra 2 da manhã, por exemplo, o Cron que normalmente é de 5 em 5 minutos, a partir de 02:00h até as 03:00h tentará executar uma vez da forma “diária”. Assim que conseguir uma vez, pronto, diário só no próximo dia.

    Então, o eu acho até melhor: definir ao invés de */8 , que seja algo do tipo 4,12,20 . Ainda será de 4 em 4 horas, e ficará bem fora do horário do cron diário

  • #10946

    Leonardo
    Participante

    Anderson, essa tua ultima me deixou confuso, acho que o cron setado ali ele roda dentro dos 5 minutos e o outro conseguentemente a cada 8 minutos dentro das 24hrs, o cron diario é aparte, pelo menos eu entendo assim… mais irei verificar com o */5 e */8 como descrito acima, veremos se o diario será executado com sucesso. 🙂 o meu é as 6:00AM

  • #10947

    Anderson
    Participante

    Cuidado para não confundir:
    -> A cada 5 minutos executa o cron, não checando por atualizações
    */5 * * * * /usr/local/bin/php /caminho_do_seu_whmcsdata/crons/cron.php skip –-CheckForWhmcsUpdate

    • A cada 8 HORAS execute o cron apenas para checar atualizações
      0 */8 * * * /usr/local/bin/php /caminho_do_seu_whmcsdata/crons/cron.php do –-CheckForWhmcsUpdate

    Como seu cron diário roda às 6h, recomendo mudar esse de 8 em 8 horas para horários específicos (2:00h, 10:00h e 18:00h):
    0 2,10,18 * * * /usr/local/bin/php /caminho_do_seu_whmcsdata/crons/cron.php do –-CheckForWhmcsUpdate

    Não, o cron diário não é à parte. Veja que em nenhum lugar você seta no cron pra ele rodar especificamente às 06h.

    O cron diário é como falei: dentro da hora estipulada até o final dela (06:00h -> 06:59h) ele pega qualquer Cron que ali rodar, e tenta rodar o diário junto. Se conseguir, ok, aí só no dia seguinte. Se não, ele fica tentando até o final daquela hora.

  • #10948

    Leonardo
    Participante

    Anderson, pronto fiz como indicado:

    */5 * * * * /usr/local/bin/php /caminho_do_whmcsdata/crons/cron.php skip –CheckForWhmcsUpdate
    0 2,10,18 * * * /usr/local/bin/php /caminho_do_whmcsdata/crons/cron.php do –CheckForWhmcsUpdate

    veremos as 6:00AM se irá funcionar, amanha post aqui o resultado.

  • #10949

    Anderson
    Participante

    Certifique-se que tem 2 traços comuns antes de cada CheckForWhmcsUpdate, pois o fórum aqui acha que estamos querendo escrever um traço grande, e fica até difícil dizer se vc tá fazendo certo ou não no seu Cron

  • #10950

    Anderson
    Participante

    ps: espero que não tenha de fato colocado esse caminho do whmcsdata que citei, é só um template pra vc utilizar o seu 🙂

    Não custa avisar

  • #10951

    Leonardo
    Participante

    Anderson, kkkkkkkkkkk não não amigo kkkkkk esta com caminho certo e os “–” certos 🙂

  • #10952

    Leonardo
    Participante

    Bom dia turma, Anderson parabéns, não é que funcionou… 🙂 obrigado pela dica, veremos se continuara assim, pois essa madruga rodou liso o cron diário, coisa que a meses não acontecia. Valeu amigo.

  • #10953

    Anderson
    Participante

    De nada Leonardo. Agora, sei lá porque tem algum erro ao rodar o WhmcsUpdate no cron diário

    Por sorte não foi em nenhuma função essencial, que não pudesse ser jogada em outro horário.

  • #10924

    Quando faço a instalação > Instalação via “FTP” no WHMCS 7.5.1 aparece a seguinte mensagem quando vou em ‘Opções > Pagamentos > Portais para Pagamento > All Payment Gateways:’

    Oops!
    Something went wrong and we couldn’t process your request.
    Please go back to the previous page and try again.

    Se retiro os arquivos volta a funcionar.

    Estou usando php 7.0.

  • #10940

    Anderson
    Participante

    Leonardo, sim, separei. Da seguinte forma: criei no gestor do Cron duas linhas

    */5 * * * * /usr/local/bin/php /caminho_do_seu_whmcsdata/crons/cron.php skip –CheckForWhmcsUpdate
    0 */8 * * * /usr/local/bin/php /caminho_do_seu_whmcsdata/crons/cron.php do –CheckForWhmcsUpdate

    Como eu tinha percebido que sempre estava dando Crash na etapa do WHMCS Update, decidi isolar para analisar melhor, e acabou que nunca mais vi o problema. Sei lá porque

    ps: o blockquote aqui do fórum está fazendo uma transformação indevida, cuidado. Antes de CheckForWhmcsUpdate são dois traços “-“

    • Esta resposta foi modificada 5 meses, 2 semanas atrás por  Anderson.
  • #11004

    Henrique
    Participante

    Bom dia,

    Estou tendo exatamente o mesmo problema.

    Utilizo WHMCS 7.6.1, PHP 7.1 e GofasGerenciaNET Boleto v1.2.2.

    Vi no histórico que vocês utilizaram a versão não criptografada do módulo de boletos, porém o link fornecido para download está quebrado.

    Teriam como disponibilizar novamente? Acredito que assim poderei debugar o código e possivelmente encontrar uma solução.

    Obrigado!

Você deve fazer login para responder a este tópico.