PROBLEMA
Ocorre o erro Incoming request ended abruptly: context canceled (ou 503/504 Gateway Timeout) no log do Docker ou do LiteSpeed/CyberPanel, mesmo após aumentar o max_execution_time do PHP.
Isso acontece porque um componente de proxy ou o próprio LiteSpeed (que age como proxy para o PHP) está encerrando a conexão antes que o script PHP possa terminar, desconsiderando o limite alto configurado no php.ini.
SOLUÇÃO
A solução consiste em garantir que o PHP tenha o tempo de execução e encerramento correto e, crucialmente, que o LiteSpeed (em seu Virtual Host) seja instruído a esperar pelo PHP pelo mesmo período.
PASSO 1: Ajuste no php.ini (Configuração Avançada)
- Acesse o CyberPanel: PHP $\rightarrow$ Edit PHP Configs $\rightarrow$ Advanced.
- Selecione a versão do PHP do seu site (Ex: PHP 8.3).
- Garanta que os valores de
max_execution_timeemax_input_timesejam definidos para o valor desejado (ex:300). - Adicione a diretiva crucial
request_terminate_timeoutcom um valor ligeiramente maior.
Configurações a serem aplicadas no php.ini:
Ini, TOML
; Tempo máximo que o script pode rodar
max_execution_time = 300
; Tempo máximo de leitura da requisição (input)
max_input_time = 300
; Tempo máximo que o PHP-FPM deve esperar antes de encerrar o processo
request_terminate_timeout = 301
- Salve as alterações e Reinicie o PHP (
PHP$\rightarrow$Restart PHP).
PASSO 2: Ajuste no LiteSpeed Virtual Host (SSH)
O context canceled é geralmente resolvido ao instruir o LiteSpeed (que está na frente) a esperar mais tempo pela Aplicação Externa (o PHP).
- Acesse o servidor via SSH.
- Edite o arquivo de configuração do seu Virtual Host (VH), que está no caminho:Bash
sudo nano /usr/local/lsws/conf/vhosts/SEU_DOMINIO/vhconf.conf(SubstituaSEU_DOMINIOpelo nome real do seu host virtual.) - Localize a seção
extprocessor(no nosso caso, eramerca4425) e ajuste as diretivas de timeout para um valor alto (ex:600segundos), garantindo que sejam maiores que o limite do PHP (301s).
Configurações a serem aplicadas no vhconf.conf:
Snippet de código
extprocessor merca4425 {
type lsapi
# ... (outras configurações)
# Tempo máximo para iniciar a conexão com o PHP
initTimeout 600
# Tempo que o LiteSpeed espera por uma nova tentativa de conexão (CRÍTICO)
retryTimeout 600
# ... (outras configurações)
}
- Salve o arquivo e Reinicie o OpenLiteSpeed:Bash
sudo /usr/local/lsws/bin/lswsctrl restart
RESULTADO
Com estas configurações sincronizadas em todas as camadas (PHP e LiteSpeed), a mensagem de erro Incoming request ended abruptly: context canceled é eliminada, e os scripts de longa execução podem ser concluídos com sucesso dentro do novo limite de tempo definido.






