Php
php-fpm 對我 exec 或 shell_exec 不起作用
我有 OpenBSD 5.6 和 php-fpm、nginx。
預設在 /var/www 上被 chroot
我試試:(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,預設情況下它是 chrooted —— 你自己也這麼說的。
whoami
您的 PHP 腳本無法訪問諸如此類的命令。這是設計使然。