php shell_exec permission denied

user3918128 picture user3918128 · Aug 18, 2015 · Viewed 22.5k times · Source

shell_exec("touch /Users/Nerses/Downloads/ads.txt 2>&1")

I have a problem with the PHP exec(shel_exec) function. It says that I do not have permissions to execute the command.

How can I open these permissions?

Answer

SpongePablo picture SpongePablo · Aug 18, 2015

Your PHP code is trying to access /Users/Nerses/Downloads/ads.txt, as you can see, that folder is owned by the user called "Nerses".

He is the only one (and root) who can access it (unless you change the permissions to that folder).

Normally, the user that executes shell_exec is called www-data, so give permissions to that user, or change the ones in that folder.

Other option is to execute

shell_exec('sudo -S YOUR COMMAND');

You can check out the user you use with the command

shell_exec('whoami');