Erros PHP
Quando seu aplicativo está em funcionamento, você pode encontrar erros de PHP nos registros ou pode desejar evitar que seus scripts PHP executem indefinidamente por causa de solicitações incompletas ou interrompidas. Este artigo fornece orientações sobre como estabelecer limites adequados de tempo e memória, assegurando assim a estabilidade, segurança e desempenho ideal do seu aplicativo.
Limite de Memória
O limite de memória padrão do PHP na Hospedagem de Aplicativos é de 128 MB para todas as versões do PHP. Se o seu aplicativo exceder esse limite, você poderá ver um erro semelhante ao seguinte nos logs do aplicativo:
Detected 1047468200 Bytes of RAM
PHP memory_limit is 128M Bytes
Para aumentar o limite de memória do aplicativo, crie um arquivo .user.ini no diretório raiz do aplicativo e adicione a configuração do limite de memória ao arquivo. Por exemplo, se você quiser aumentar o limite de memória do PHP para 256 MB, adicione o seguinte:
memory_limit = 256M
Aumentar o Tempo Limite de Término da Solicitação
A diretiva request_terminate_timeout
do FastCGI Process Manager (FPM) determina o tempo máximo que um script PHP pode ser executado antes que o servidor web o encerre à força, independentemente de o script ter sido concluído ou não.
Isso é útil para evitar que scripts PHP sejam executados indefinidamente, o que pode ocorrer devido a erros de codificação, loops infinitos ou tempos de processamento excessivos. Ao configurar um request_terminate_timeout
apropriado, você pode prevenir que processos PHP consumam recursos excessivos do servidor e afetem potencialmente o desempenho geral e a estabilidade do servidor.
Para alterar o valor do request_terminate_timeout:
- Crie um arquivo chamado fpm_custom.conf no diretório raiz do seu repositório e adicione o valor necessário a ele, por exemplo (a unidade padrão é segundos):
request_terminate_timeout = 120
- Envie as alterações para o seu repositório Git.
- No MyKinsta, selecione seu aplicativo > Processos > edite o Processo da web > atualize o Comando Startpara incluir o arquivo fpm_custom.conf, por exemplo:
heroku-php-apache2 -F fpm_custom.conf