Aşağıdaki komutu kullanarak PHP'den bir Python betiği çalıştırmaya çalışıyorum:
exec("/usr/bin/python2.7 /srv/http/assets/py/switch .py arg1 arg2");
Ancak, PHP herhangi bir çıktı üretmez. Hata raporlama E_ALL olarak ayarlanmış ve display_errors açık.
Denediklerim şunlar:
python2
kullandım,/usr/bin/python2.7
yerine >/usr/bin/python2 ve - Ayrıca hiçbir şeyi değiştirmeyen mutlak bir yol yerine göreli yol.
exec
,shell_exec
,system< komutlarını kullanmayı denedim. /code>.
python2.7
Ancak, çalıştırırsam
if (exec("echo TEST") == "TEST") { echo "exec çalışır !"; }
şimdi kapatma
hiçbir şey yapmazken mükemmel çalışıyor.
PHP'nin erişim ve yürütme izinleri var dosya.
DÜZENLE: Alejandro sayesinde sorunu çözebildim. Aynı sorunu yaşıyorsanız, web sunucunuzun muhtemelen/umarım root olarak çalışmadığını unutmayın. Web sunucunuzun kullanıcısı veya benzer izinlere sahip bir kullanıcı olarak giriş yapmayı deneyin ve komutları kendiniz çalıştırmayı deneyin.