Server Health fopen(/tmp/pcrm-cron-lock): Failed to open stream: Permission denied

Quem nunca teve o erro de CRON nas últimas versões do Perfex (3.2.x), não é mesmo.

Mas o que é o erro "fopen(/tmp/pcrm-cron-lock): Failed to open stream: Permission denied"?

indica que o PHP tentou criar ou abrir o arquivo /tmp/pcrm-cron-lock, mas não conseguiu por causa de problemas de permissão no diretório /tmp.

Alguns servidores tem como padrão o tmp como diretório temporário, já o Perfex tem o diretório temp. O problema é que o diretório tmp não existe, e ele nem precisa existir, pois o perfex já utiliza o temp.

Como corrigir o erro de Failed to open stream: Permission denied?

Uma opção seria criar o diretório tmp dentro da sua instalação de Perfex, e dentro dela o arquivo pcrm-cron-lock. Porém, utilizamos uma regra diferente, que seria modificar o arquivo do Perfex que trata o diretório temporário.

Para a segunda opção, acesse o arquivo application\helpers\general_helper.php e na linha 915 você vai encontrar o método  get_temp_dir(). Adicione o código abaixo no inicio do método.

`$temp = app_temp_dir(); if (is_dir($temp) && is_writable($temp)) { return $temp; }`

Identi-o, por favor!

Esse código fará com que o Perfex utilize o arquivo padrão, configurado por ele.

Você achou esse artigo útil?