Elimine o aviso do cache OP do Nextcloud ajustando o limite correto.

Para eliminar o aviso do Nextcloud "O OPcache do PHP não está configurado corretamente", abra o aviso completo em Configurações de administração → Visão geral e aumente apenas o limite de OPcache identificado na configuração do PHP usada pelo servidor web. Reinicie o serviço PHP correspondente e verifique o aviso novamente; editar apenas a configuração do PHP pela linha de comando pode não alterar o que o Nextcloud utiliza.

Por exemplo, se o Nextcloud reportar que o buffer de strings internas está quase cheio, aumentar opcache.interned_strings_bufferde 16 para 32 MB é um ajuste inicial razoável quando o servidor tiver RAM suficiente. Um aviso diferente sobre scripts em cache ou memória compartilhada requer uma configuração diferente.

Por que o Nextcloud exibe este aviso do OPcache?

O OPcache armazena bytecode PHP compilado em memória compartilhada, reduzindo a quantidade de compilação necessária para requisições web repetidas. Ele também reserva espaço para strings internadas, o que permite que o PHP reutilize strings idênticas. Essas capacidades são limites independentes, portanto, expandir uma não necessariamente resolve um alerta sobre a outra.

De acordo com a documentação de otimização do servidor Nextcloud 35 , o painel de administração emite um aviso quando o limite de tamanho do OPcache excede 90% da sua capacidade alocada. A mensagem pode mencionar especificamente um buffer de strings internadas quase cheio, um número limitado de scripts em cache ou memória compartilhada insuficiente. Esse detalhe determina a solução.

O Nextcloud também exige opcache.save_comments=1isso, pois depende da preservação dos comentários no código PHP. Portanto, uma extensão OPcache desativada ou a desativação da preservação de comentários é um problema de configuração, e não apenas uma questão de dimensionamento do cache.

1. Identifique o cenário que precisa de atenção.

Faça login como administrador, acesse Configurações de administração → Visão geral e leia o aviso completo do OPcache. Anote a diretiva exata, se houver. Não presuma que todo aviso do OPcache signifique que o buffer de strings internadas está com tamanho insuficiente.

  • O buffer de strings internadas está quase cheio: verifique opcache.interned_strings_buffer.
  • Memória compartilhada do OPcache quase cheia: verifique opcache.memory_consumption.
  • Scripts ou chaves em cache próximos do limite: verifique opcache.max_accelerated_files.
  • OPcache desativado ou comentários não preservados: verifique opcache.enablee opcache.save_comments.

2. Encontre a configuração PHP que serve o Nextcloud.

Em servidores Debian ou Ubuntu que utilizam PHP-FPM, a configuração do PHP geralmente é organizada pela versão do PHP e pela API do servidor. Por exemplo, o PHP 8.3 FPM pode ler arquivos em /etc/php/8.3/fpm/conf.d/, enquanto o módulo PHP do Apache pode usar /etc/php/8.3/apache2/conf.d/.

Para ver quais serviços PHP-FPM existem em um host systemd, execute:

systemctl list-units --type=service 'php*-fpm.service'

Verifique os arquivos OPcache aplicáveis, substituindo-os pela versão do PHP instalada:

sudo ls -l /etc/php/8.3/fpm/conf.d/*opcache*
sudo grep -R 'opcache\.' /etc/php/8.3/fpm/conf.d/

Caso nenhum arquivo seja encontrado, verifique o diretório principal php.inie as convenções de empacotamento da sua distribuição. O comando php --inié útil para identificar a configuração do PHP via linha de comando , mas a linha de comando e o PHP-FPM podem carregar configurações diferentes.

Para Docker ou Nextcloud All-in-One, examine a configuração do PHP dentro do contêiner Nextcloud e use um método de configuração persistente compatível. Editar /etc/phparquivos de hosts geralmente não configura o PHP dentro de um contêiner; editar um arquivo de contêiner gerado também pode ser desfeito por recriação.

3. Aumente o limite relatado sem alterar configurações não relacionadas.

Faça um backup do arquivo de configuração relevante antes de realizar qualquer alteração. Em uma instalação convencional do PHP-FPM em Debian/Ubuntu, uma abordagem viável é adicionar um arquivo de configuração local no conf.ddiretório FPM da versão do PHP. Confirme se este diretório está sendo carregado pela sua instalação do PHP-FPM antes de prosseguir.

Para o exemplo de buffer de strings internadas , crie ou edite uma sobrescrita local, como /etc/php/8.3/fpm/conf.d/99-nextcloud-opcache.ini:

; Example for a warning about interned strings
opcache.interned_strings_buffer=32

Aqui, 32significa 32 MB, não 32 bytes. Ajuste o valor final de acordo com o uso real e a RAM disponível.

Se o aviso mencionar um limite diferente, use o exemplo correspondente em vez de somar os três indiscriminadamente:

; Example only: larger shared bytecode cache
opcache.memory_consumption=256

; Example only: allow more cached script keys
opcache.max_accelerated_files=20000

Os valores para opcache.memory_consumptionsão em megabytes, enquanto opcache.max_accelerated_filesespecifica um limite de chave de script. A referência oficial de configuração do PHP OPcache explica suas unidades, valores padrão e como alterá-los.

Quando o aviso apontar para OPcache desativado ou comentários ausentes em vez de capacidade, verifique estas configurações:

opcache.enable=1
opcache.save_comments=1

Não desligue opcache.validate_timestampsnem prolongue significativamente a duração da sessão opcache.revalidate_freqapenas para ignorar este aviso. O Nextcloud alerta que a revalidação tardia do cache pode impedir que as alterações de configuração e atualização entrem em vigor imediatamente.

4. Aplique a nova configuração

Para um servidor de exemplo executando PHP 8.3 através do PHP-FPM, primeiro valide a configuração do serviço e, em seguida, reinicie o serviço correspondente durante uma breve janela de manutenção:

sudo php-fpm8.3 -t
sudo systemctl restart php8.3-fpm

Substitua 8.3pela versão do PHP-FPM instalada e confirme o nome do executável e do serviço antes de executar qualquer comando. Uma reinicialização interrompe as solicitações processadas por esse pool. No Apache com mod_php, o serviço relevante é o Apache, e não o PHP-FPM; para contêineres, aplique o procedimento de reinicialização ou recriação documentado da sua implantação, preservando a configuração.

Caso o serviço não reinicie, restaure o backup da sua configuração e verifique o log de erros do PHP-FPM ou do servidor web.

5. Se o aviso persistir, verifique as configurações efetivas do PHP na web.

Primeiro, recarregue as configurações de Administração → Visão geral após a reinicialização dos processos PHP. Se o aviso persistir, verifique se a diretiva alterada foi realmente carregada pelo ambiente de execução PHP da web e não apenas pela linha de comando. Verifique se há algum arquivo de carregamento posterior .iniou alguma configuração do pool PHP-FPM que esteja sobrescrevendo o valor alterado.

Em um servidor que você controla, é possível inspecionar temporariamente os valores PHP da web usando um endpoint de diagnóstico com acesso restrito e ini_get()a função do PHP. Nunca deixe uma phpinfo()página pública online: isso pode revelar o ambiente, caminhos, módulos e outros detalhes de configuração sensíveis. Remova qualquer endpoint de diagnóstico imediatamente após a verificação.

Para um alerta de dimensionamento persistente, inspecione o uso real do OPcache em condições normais de tráfego, em vez de dobrar os valores repetidamente. A documentação do PHPopcache_get_status() descreve as estatísticas de memória, strings internadas e scripts em cache disponíveis para um processo PHP em execução.

A imagem oficial do Docker do Nextcloud e as instalações All-in-One possuem suas próprias configurações padrão do PHP; não assuma que as edições feitas no nível do host ou os valores recomendados por outra instalação serão mantidos. Consulte o repositório oficial do Docker do Nextcloud ou o repositório oficial do All-in-One para obter o modelo de configuração que corresponde à sua instalação.

Verifique se a correção funcionou.

Retorne às configurações de Administração → Visão geral e confirme se o aviso específico do OPcache desapareceu. Abra e recarregue algumas páginas do Nextcloud para garantir que o aplicativo ainda responda normalmente. Se o aviso retornar após o uso regular, verifique novamente o limite medido e a configuração efetiva do PHP na web; o objetivo é deixar margem suficiente sem alocar memória desnecessária para o OPcache.

Deixar um comentário

Controle os picos de uso da CPU no Nextcloud Preview com uma fila agendada.

Transfira a criação de miniaturas para uma programação em segundo plano controlada, reduza os tamanhos de pré-visualização não utilizados e verifique a fila sem sobrecarregar seu servidor Nextcloud.

Obtenha a sincronização do Nextcloud Desktop e supere a fase de "Processando arquivos".

Identifique o arquivo, a regra de exclusão, o problema de conexão ou o estado do banco de dados do cliente que está impedindo a sincronização do Nextcloud e, em seguida, verifique se os uploads e downloads estão sendo realizados com segurança.

Elimine o aviso do cache OP do Nextcloud ajustando o limite correto.

Localize o limite do OPcache do PHP que está causando o aviso do Nextcloud, atualize a configuração correta do PHP na web, reinicie com segurança e verifique o resultado.

Conectando o Nextcloud ao CODE Docker: Configuração e vantagens e desvantagens

Conectando o Nextcloud ao CODE Docker: Configuração e vantagens e desvantagens

Compare o código integrado e o baseado em Docker e, em seguida, conecte o Collabora Online ao Nextcloud por meio de um proxy reverso HTTPS seguro.

Crie um cluster Nextcloud resiliente com Galera.

Planeje uma implementação confiável de alta disponibilidade do Nextcloud com armazenamento compartilhado, bloqueio Redis, roteamento MariaDB com reconhecimento de quorum e verificações práticas de failover.

Consiga realizar chamadas do Nextcloud Talk quando a Direct Media falhar

Consiga realizar chamadas do Nextcloud Talk quando a Direct Media falhar

Configure e verifique se um servidor TURN está acessível para o Nextcloud Talk quando firewalls ou NAT restritivo bloquearem chamadas diretas.

Elimine os avisos de integridade do Nextcloud restaurando os arquivos corretos.

Use o relatório de arquivos inválidos para identificar código Nextcloud alterado, ausente ou extra, restaurar arquivos confiáveis ​​com segurança e verificar o resultado.

Conecte o Gmail ou o Microsoft 365 ao Nextcloud Mail usando OAuth2.

Configure o OAuth2 para o Nextcloud Mail com o Gmail ou o Microsoft 365, verifique o recebimento e o envio de mensagens e resolva problemas comuns de consentimento e falhas de SMTP.

Remova o Nextcloud travado no modo de manutenção com segurança usando o OCC.

Remova o Nextcloud travado no modo de manutenção com segurança usando o OCC.

Use o OCC para restaurar o acesso ao Nextcloud, verificar o status da migração do banco de dados e escolher o comando correto para instalações de arquivos compactados, Docker ou Snap.

Configurar o login do Nextcloud LDAP e do Active Directory

Conecte o Nextcloud ao LDAP ou Active Directory, limite o acesso com filtros de usuários e grupos e verifique a autenticação segura antes da implementação.