по команде для работы Linux не работает из переполнения стека

У меня есть сценарий .sh с команда в нем:

curl --digest "http://xxxxxxx.xxx/mail.php?email=xxxx@xxx.xx";

от терминала это работает хорошо:

./script.sh #(mail arrives in my box)

с PHP это работает хорошо:

shell_exec('./phpsc.sh');  // (mail arrives in my box)

от терминала это работает хорошо:

 at -f phpsc.sh now + 5 minute
# (job created, mail arrives in my box after 5 minutes)

с PHP это не будет работать:

shell_exec('at -f phpsc.sh now + 5 minute'); //:( :(

даже когда я положил at введите команду в скрипт и запустите скрипт из php at команда будет проигнорирована 🙁

1

Решение

я нашел решение,

Я удалил WWW-данные от файл /etc/at.deny и теперь команда ‘at’ работает нормально с php (sell_exec)

2

Другие решения

Я знаю, что иногда необходимо использовать source для вызова переменных среды.

Вот то, что вы должны попробовать (адаптироваться, если вы используете что-то другое, чем ):

shell_exec('source ${HOME}/.kshrc ; at -f phpsc.sh now + 5 minute');
0

В CentOS 7 мне пришлось добавить «apache» в /etc/at.allow.

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector