Esse problema é complicado, e eu não sou um especialista, então tenha paciência comigo. Minha equipe administrativa do servidor configurou-me com uma caixa padrão do RHEL. Tinha o PHP pré-instalado, assim como o apache.
Agora estou tentando instalar o Drupal 7 na máquina, o que me alertou para um problema:
Database support Disabled
Your web server does not appear to support any common PDO database
extensions. Check with your hosting provider to see if they support
PDO (PHP Data Objects) and offer any databases that Drupal supports.
Pesquisando este assunto e conversando com nossos servidores, pareceu que precisávamos ativar as extensões PDO no arquivo php.ini. Ótimo, em /etc/php.ini eu adicionei as linhas extension = pdo.so e extension = mysql_pdo.so.
Nada mudou e tenho várias preocupações. Quando procuramos no servidor por um arquivo pdo.so, ele é encontrado em um diretório modules
dentro de / usr / em algum lugar. Copiamos o caminho para esse diretório no php.ini como extension_dir=[that path]
. Reinicie o apache, sem alterações.
Quando executo o php -version, vejo uma mensagem de erro dizendo que ele não pode carregar a biblioteca dinâmica, mas está procurando pela biblioteca pdo.so em / usr / local / lib / php / extensions / some-strange -no-debug-non-zts-0330i504065 / directory. Não no diretório que acabamos de definir como "extensions_dir" no php.ini. E na saída phpinfo (), ele lista o diretório da extensão como configuramos no php.ini.
Em segundo lugar, na saída phpinfo (), na seção "Configurar Comando", o sinalizador --disable-pdo
está presente.
Se eu verificar which php
e, em seguida, navegar até lá, há outro arquivo nesse diretório chamado php-config. Abra isso e TA DA! Há um valor "extension_dir" que corresponde ao diretório /some-strange-no-debug-non-zts-92ur9u92i/
mencionado anteriormente.
Isso tudo precisa ser recompilado com os sinalizadores apropriados? Pode ser corrigido no php.ini? Se não, como poderíamos até recompilar o php se ele fosse instalado com o yum ou o rpm?
OBRIGADO !!!
UPDATE 1
Devo dizer que estou usando pacotes RHEL5 php53. Eu já rodei o yum install php53-pdo. Se eu tentar executar o yum install php-pdo (ou qualquer outro pacote php não php53) recebo erros de conflito entre php53-common e php-common, e é por isso que comecei a executar pacotes php53 em primeiro lugar.