PHP não carrega php.ini

1

Eu tenho esse problema estranho e estúpido que estou tentando resolver por algumas horas agora. Eu instalei o apache 2.2.10 (ele foi compilado da fonte há muito tempo) e PHP-5.3.6. Ambos estão funcionando muito bem, exceto pelo fato de eu não conseguir fazer o PHP carregar o arquivo php.ini.

Este é o meu arquivo config.nice:

'./configure' \
'--prefix=/usr/local/php-5.3.6' \
'--with-config-file-path=/usr/local/php-5.3.6/lib' \
'--with-apxs2=/usr/local/apache-2.2.10/bin/apxs' \
'--with-curl' \
'--with-mysql' \
'--with-zlib' \
'--with-bz2' \
'--with-gd' \
'--with-jpeg-dir' \
'--with-png-dir' \
'--enable-mbstring' \
'--with-freetype-dir' \
'--with-t1lib' \
'--enable-gd-native-ttf' \
'--enable-gd-jis-conv' \
'--with-openssl' \
'--with-openssl-dir' \
'--enable-pcntl' \
"$@"

Eu usei este config.nice para todas as versões do PHP desde 5.2 com pequenas mudanças e ele está trabalhando desta forma em alguns servidores. É provavelmente algo pequeno que está faltando e não consigo entender o que é.

Eu configurei o '--with-config-file-path' porque eu acho que o php não consegue encontrar seu próprio caminho ou algo assim. No caminho definido eu tenho um arquivo chamado php.ini que é copiado do tarball do PHP 5.3.6 (php.ini-development).

O arquivo deve estar funcionando como o original, mas não consigo ver porque não está carregando - phpinfo () retorna:

Configuration File (php.ini) Path:  
/usr/local/php-5.3.6/lib
Loaded Configuration File:  
(none) 

Alguém tem ideia do que pode ser o problema?

Informação relevante:
@Server OS: Slackware 12,2
@Apache Versão: 2.2.10
@Apache User / Group: daemon / daemon
@PHP Versão: 5.3.6 (Mais recente)
@PHP ini file: /usr/local/php-5.3.6/lib/php.ini
@ Perf file perms do PHP: 777 (daemon.daemon)

    
por tftd 05.05.2011 / 20:10

2 respostas

2

Eu estou supondo que o arquivo não está realmente lá ou há um problema de permissões. Eu corri echo "<?php phpinfo() ?>" | strace php 2>&1 | grep php.ini para ver o que está acontecendo.

    
por 05.05.2011 / 20:35
1

Para pessoas que ainda não conseguiram resolver isso: No meu caso, foram as permissões do SELinux que estavam impedindo o PHP de carregar o arquivo php.ini. Mudar o contexto para o arquivo php.ini com os seguintes comandos fez o seguinte:

semanage fcontext -a -t httpd_config_t "/usr/local/lib/php.ini"
restorecon -v -R /usr/local/lib/
    
por 15.08.2017 / 18:52

Tags