Onde está o php.ini quando o SCL PHP está em vigor?

1

Nós habilitamos o SCL no CentOS 7 e instalamos o Python 2.7, o Apache 2.4 e o PHP 7.1. Parece que os programas atualizados estão sendo usados. No entanto, parece que temos um problema com o endurecimento do PHP.

Primeiro, aqui está o php.ini que podemos encontrar:

# find /opt/rh -name php.ini
/opt/rh/rh-php71/register.content/etc/opt/rh/rh-php71/php.ini

Em seguida, adicionamos nosso disable_functions :

# grep disable_functions /opt/rh/rh-php71/register.content/etc/opt/rh/rh-php71/php.ini
disable_functions=apache_note,apache_setenv,chgrp,closelog,debugger_off,debugger
_on,define_sys,define_syslog_variables,diskfreespace,dl,escapeshellarg,escapeshe
llcmd,exec,getmypid,getmyuid,ini_restore,leak,listen,openlog,passthru,pclose,pcn
tl_alarm,pcntl_exec,pcntl_fork,pcntl_getpriority,pcntl_get_last_error,pcntl_setp
riority,pcntl_signal,pcntl_signal_dispatch,pcntl_sigprocmask,pcntl_sigtimedwait,
pcntl_sigwaitinfo,pcntl_strerror,pcntl_wait,pcntl_waitpid,pcntl_wexitstatus,pcnt
l_wifexited,pcntl_wifsignaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wtermsig,php
_uname,popen,posix,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_
getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgi
d,posix_getpgrp,posix_getpid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix
_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_se
teuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_times,posix_tty
name,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,s
hell_exec,show_source,syslog,system,url_exec,_getppid

Finalmente, quando reiniciarmos o Apache, adicionaremos uma página phpinfo.php e, em seguida, inspecione o resultado (este é o resultado real do servidor web), o PHP afirma que não há funções desabilitadas:

Acho que estamos usando o php.ini errado, mas não consigo encontrar o que devemos usar. Não consigo encontrá-lo no sistema de arquivos em /opt e a pesquisa está retornando resultados irrelevantes.

Minha pergunta é, onde está php.ini quando o SCL PHP está em vigor?

    
por jww 21.12.2017 / 06:04

1 resposta

1

As coleções de software instalam a maioria de suas coisas abaixo de /opt , mas a configuração realmente fica abaixo de /etc/opt . (E eu não ficaria surpreso em ver um /var/opt ). O arquivo que você encontrou é, na verdade, a configuração copiada em /etc/opt/… por um dos scripts de instalação em /opt/rh/rh-php71/register.d .

    
por 21.12.2017 / 17:38