Nesse artigo ensinarei como corrigir o erro 524 do Cloudflare quando você tenta exportar em relatório dentro do admin do Magento 1.9.
Se você usa o Cloudflare como CDN para sua loja Magento você já deve ter se deparado com esse erro enquanto tentava exportar dados através da ferramenta de exportação em Sistema > Importar / Exportar > Data Flow – Modelo.
Isso acontece porque o Cloudflare limita o tempo de resposta do servidor de origem em 100 segundos. Esse tempo só pode ser aumentado se você possuir o plano Enterprise deles.
Existem duas soluções.
Solução 1
Você tenta reduzir a quantidade de informações que seu relatório precisa diminuido assim o tempo de execução do script para menos de 100 segundos ou
Solução 2
Criar um script PHP relatorio.php e rodar esse script dentro do diretório raiz do Magento no servidor de hospedagem via SSH.
<?php /* O script inicia o processo de exportação baseado no número do profile de determinado modelo. A função é a mesma que clicar em "Rodar perfil em popup" no backend do Magento. */ set_time_limit(0); $profileId = 1; // Sistema > Importar / Exportar > Dataflow Modelos. Você precisa ir no admin do seu Magento checar essa informação. require_once 'app/Mage.php'; umask(0); Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID); $profile = Mage::getModel('dataflow/profile'); $userModel = Mage::getModel('admin/user'); $userModel->setUserId(0); Mage::getSingleton('admin/session')->setUser($userModel); $profile->load($profileId); if (!$profile->getId()) { Mage::getSingleton('adminhtml/session')->addError('ERROR: Incorrect profile id'); } Mage::register('current_convert_profile', $profile); $profile->run(); $recordCount = 0; $batchModel = Mage::getSingleton('dataflow/batch'); echo "EXPORTAÇÃO COMPLETA. BATCHID: " . $batchModel->getId(); ?>
O ID do modelo pode ser encontrado conforme destacado em vermelho na tela abaixo.
Para rodar o script basta você usar a linha de comando no SSH do seu servidor:
usuario@servidor:/caminho/da/instalacao/magento/$ php relatorio.php