Не удается запустить подпроцесс в AWS EC2

У нас есть экземпляр ec2, работающий с каркасом отдыха django. Теперь я хочу запустить crontab, который запускает скрипт на python, который вызывает скрипт php.

test.py

class Command(BaseCommand):
def handle(self, *args, **options):
p = subprocess.Popen(['php', "/opt/python/current/app/my-app/my_test_file.php", name, caption], stdout=subprocess.PIPE)
result = p.communicate()[0]

Теперь на моей локальной машине я не получаю никаких ошибок. Работает нормально. И, как вы можете видеть, я использую абсолютный путь там.

При загрузке в ec2 и запуске я получаю эту ошибку:

>       File "/usr/lib64/python2.7/subprocess.py", line 522, in call
>         return Popen(*popenargs, **kwargs).wait()
>       File "/usr/lib64/python2.7/subprocess.py", line 710, in __init__
>         errread, errwrite)
>       File "/usr/lib64/python2.7/subprocess.py", line 1335, in _execute_child
>         raise child_exception
>     OSError: [Errno 2] No such file or directory

С чем это связано?
Это из-за php-файла, который он не может найти? Потому что я тоже использовал этот метод:

directory = os.getcwd()
p = subprocess.Popen(['php', directory + "/my_test_file.php", name, caption], stdout=subprocess.PIPE)

И это работало локально, но снова на ec2 выдало ту же ошибку!

Пожалуйста помоги! Заранее спасибо!

1

Решение

Задача ещё не решена.

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

Других решений пока нет …

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