Дело в том, что когда Вы выполняете команду sudo nginx reload система должна спросить пароль. А через shell_exec его никак не ввести.
Решается добавлением в sudoers примерно такой строчки:
user ALL=NOPASSWD: service nginx reload
user - пользователь от которого запускается php скрипт.