CustomBuild no DirectAdmin: Como compilar módulos PHP personalizados.

Compilar módulos PHP personalizados no DirectAdmin através do CustomBuild é um processo relativamente simples, mas que exige atenção aos arquivos de configuração para garantir que suas mudanças não sejam sobrescritas em atualizações futuras.

Aqui está o passo a passo para realizar essa tarefa com segurança:


1. Acesse o diretório do CustomBuild

Primeiro, navegue até a pasta onde o CustomBuild está instalado (geralmente /usr/local/directadmin/custombuild).

cd /usr/local/directadmin/custombuild

2. Localize ou crie o arquivo de configuração personalizada

O segredo para não perder suas customizações é usar o diretório custom. O DirectAdmin procura por arquivos nesta pasta antes de usar os padrões.

  • Identifique sua versão do PHP: (ex: php74, php81, php82).
  • Crie a pasta correspondente: `mkdir -p custom/php
  • Copie o arquivo de configuração padrão: cp -p configure/php/configure.php82 custom/php/configure.php82 (Substitua php82 pela versão que você está utilizando).

3. Adicione seu módulo personalizado

Abra o arquivo copiado com seu editor de preferência (nano ou vi) e adicione a flag de compilação necessária no final do arquivo.

nano custom/php/configure.php82

Atenção: Certifique-se de adicionar uma barra invertida \ ao final da penúltima linha para indicar que o comando continua na linha seguinte.

Exemplo: Para adicionar o suporte à biblioteca imap, você adicionaria:

--with-imap \
--with-imap-ssl

4. Recompile o PHP

Após salvar o arquivo, você precisa dizer ao CustomBuild para recompilar o PHP usando essa nova configuração.

./build php n

O n indica que ele usará a versão definida no seu options.conf.


5. Verifique a instalação

Assim que o processo terminar (o que pode levar alguns minutos dependendo do seu hardware), verifique se o módulo está ativo:

php -m | grep nome_do_modulo

Ou crie um arquivo info.php no seu diretório web com :

<?php
phpinfo();
?>

assim você verá todos os módulos instalados.

Dicas Importantes:

  • Dependências do SO: Se você estiver compilando um módulo que exige bibliotecas do sistema (como libxml2-dev ou libc-client-dev), você deve instalá-las via yum ou apt antes de rodar o ./build php.
  • Módulos PECL: Se o que você precisa é um módulo simples (como Redis ou Imagick), muitas vezes é mais fácil usar o comando ./build pecl em vez de recompilar todo o PHP.