Uruchamianie skryptu Pythona z PHP

| | | | | | | | | | | | | | | |

Próbuję uruchomić skrypt Pythona z PHP za pomocą następującego polecenia:

exec("/usr/bin/python2.7 /srv/http/assets/py/switch .py arg1 arg2");

Jednak PHP po prostu nie generuje żadnych danych wyjściowych. Raportowanie błędów jest ustawione na E_ALL i display_errors jest włączone.

Oto co próbowałem:

  • Użyłem python2, /usr/bin/python2 i python2.7 zamiast /usr/bin/python2.7
  • Użyłem również ścieżka względna zamiast ścieżki bezwzględnej, która też niczego nie zmieniła.
  • Próbowałem użyć poleceń exec, shell_exec, system.

Jednak jeśli uruchomię

if (exec("echo TEST") == "TEST") { echo "exec działa !"; } 

działa doskonale, podczas gdy zamknij teraz nic nie robi.

PHP ma uprawnienia dostępu i wykonywania plik.

EDYCJA: Dzięki Alejandro udało mi się naprawić problem. Jeśli masz ten sam problem, nie zapominaj, że Twój serwer prawdopodobnie/miejmy nadzieję nie działa jako root. Spróbuj zalogować się jako użytkownik serwera WWW lub użytkownik z podobnymi uprawnieniami i spróbuj samodzielnie uruchomić polecenia.