Reputation: 4721
(There is some mention of this online, but none of the solutions worked.) I want to be able to use shell_exec and exec from a PHP script.
Meaning, use:
<? exec("echo hello world"); ?>
or
<? shell_exec("echo hello world"); ?>
According to a link I found online (http://forums.cpanel.net/f5/enable-shell_exec-one-user-109601.html), one way to do it is to add under VirtualHost the directives:
php_admin_value suhosin.executor.func.blacklist = “shell_exec”but when I looked at the configuration file, trying to restart the webserver, I get:
28/07/14 17:18:26: Syntax error on line 1 of /etc/httpd/conf.d/serv1.conf:
28/07/14 17:18:26: php_admin_value takes two arguments, PHP Value Modifier (Admin)
and the server is not restarted.
Any ideas how to enable exec and shell_exec? I can't trace the origin of this error.
EDIT: I am not the root on the machine. I couldn't find an php.ini file, but there is an /etc/httpd/conf.d/php.conf file and it has no disable_functions.
Here it is:
#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#
<IfModule prefork.c>
LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
LoadModule php5_module modules/libphp5-zts.so
</IfModule>
#
# Cause the PHP interpreter to handle files with a .php extension.
#
AddHandler php5-script .php
AddType text/html .php
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
#
# Uncomment the following line to allow PHP to pretty-print .phps
# files as PHP source code:
#
#AddType application/x-httpd-php-source .phps
Upvotes: 8
Views: 96819
Reputation: 18807
If you are not the root on the machine, and exec()
function is disabled, then you can't enable it by yourself.
See http://php.net/manual/en/ini.core.php#ini.disable-functions
disable_functions string
This directive allows you to disable certain functions for security reasons. It takes on a comma-delimited list of function names. disable_functions is not affected by Safe Mode.
Only internal functions can be disabled using this directive. User-defined functions are unaffected.
This directive must be set in php.ini For example, you cannot set this in httpd.conf.
Upvotes: 12
Reputation: 13596
remove from function from
disable_functions=""
in your php.ini file
or if you have Suhosin then check your setting in Suhosin config file under suhosin.executor.func.blacklist
Upvotes: 0
Reputation: 6252
You need to disable safe mode in PHP by navigating through \Apache2\bin
(not folder) and restart the server.
Upvotes: 1