0

Hi got a LEMP stack un Ubuntu 18.04 with php 7.2.5 server info says Shell Exec Is Supported Shell Exec Zip Not Supported

therefore some of my plugins says This server is not configured for the Shell Zip engine - please use a different engine mode. To make 'Shell Zip' available, ask your host to: 1. Install the zip executable and make it accessible to PHP.

I have tries this code PHP - How to know if server allows shell_exec

  if(function_exists('shell_exec')) {
        echo "exec is enabled";
    }

and the function is enabled

however when i test if it is executable with the code below nothing happens.

As DanFromGermany pointed out, you probably check then if it is executable. Something like this would do it

if(shell_exec('echo foobar') == 'foobar'){
    echo 'shell_exec works';
}

or tried this, returns nothing as well just white page

 // Exec function exists.
    // Exec is not disabled.
    // Safe Mode is not on.
    $exec_enabled =
       function_exists('exec') &&
       !in_array('exec', array_map('trim', explode(', ', ini_get('disable_functions')))) &&
       strtolower(ini_get('safe_mode')) != 1
    ;


    if($exec_enabled) { exec('blah'); }

I have also checked with the code below from https://wpguru.co.uk/2014/01/how-to-test-if-a-shell-command-will-work-in-php/ and it does work

// helper function
function checkShellCommand($command) {
    $returnValue = shell_exec("$command");
    if(empty($returnValue)) {
        return false;
    } else {
        return true;
    }
}

// test the shell command you'd like to use
if (!checkShellCommand('uname -a')) {
    print 'This command cannot be executed.';
} else {
    echo shell_exec('uname -a');
}

So, could anyone tell me how can I make it accessible to PHP

Many thanks

mag8891
  • 1
  • 3

1 Answers1

0

this was solved by

apt-get install zip unzip
mag8891
  • 1
  • 3