У меня есть OpenBSD 5.6 и php-fpm, nginx.
chrooted по умолчанию на/var/www
Я пробую: (test.php)
<?php
if(function_exists('exec')) {
echo "exec is enabled";
}else{
// it's not
echo "exec is disabled";
}
echo "<br>";
if( ini_get('safe_mode') ){
// safe mode is on
echo "safe_mode is enabled";
}else{
// it's not
echo "safe_mode is disabled";
}
echo "<br>";
echo exec('whoami');
?>
браузер только печатает:
exec is enabled
safe_mode is disabled
Я пытался измениться:
echo exec('whoami');
кому:
echo exec('/usr/bin/whoami');
но должностное лицо не работает
Я попробовал в терминале;
# sudo -u www php-5.5 test.php
exec is enabled<br>safe_mode is disabled<br>www
Таким образом, я думаю, что целая проблема находится в php-fpm.
Был бы я мог помочь?
Это OpenBSD, и он по умолчанию chrootted - вы сами так сказали.
Такие команды, как whoami
недоступны вашим PHP-скриптом. Это сделано намеренно.