Saya mencoba menjalankan skrip Python dari PHP menggunakan perintah berikut:
exec('/usr/bin/python2.7 /srv/http/assets/py/switch.py arg1 arg2');
Namun, PHP tidak menghasilkan keluaran apa pun. Pelaporan kesalahan disetel ke E_ALL dan display_errors aktif.
Inilah yang saya coba:
- Saya menggunakan
python2,/usr/bin/python2danpython2.7sebagai gantinya/usr/bin/python2.7 - Saya juga menggunakan jalur relatif alih-alih jalur absolut yang juga tidak mengubah apa pun.
- Saya mencoba menggunakan perintah
exec,shell_exec,system.
Namun, jika saya lari
if (exec('echo TEST') == 'TEST')
{
echo 'exec works!';
}
itu bekerja dengan baik sementara shutdown nowtidak melakukan apapun.
PHP memiliki izin untuk mengakses dan mengeksekusi file.
EDIT: Terima kasih kepada Alejandro, saya bisa memperbaiki masalah. Jika Anda mengalami masalah yang sama, jangan lupa bahwa server web Anda mungkin / mudah-mudahan tidak berjalan sebagai root. Coba masuk sebagai pengguna server web Anda atau pengguna dengan izin serupa dan coba jalankan perintah sendiri.