我正在嘗試使用以下命令從 PHP 運行 Python 腳本:
exec("/usr/bin/python2.7 /srv/http/assets/py/switch .py arg1 arg2");
然而,PHP 根本不產生任何輸出。錯誤報告設置為 E_ALL 並且 display_errors 已打開。
這是我嘗試過的:
- 我使用了
python2
,/usr/bin/python2
和python2.7
而不是/usr/bin/python2.7
- 我也使用了相對路徑而不是絕對路徑,它也沒有改變任何東西。
- 我嘗試使用命令
exec
、shell_exec
、system
.
但是,如果我運行
if (exec("echo TEST") == "TEST") { echo "exec works !"; }
它工作得非常好,而 shutdown now
什麼都不做。
PHP 有訪問和執行的權限
編輯:感謝 Alejandro,我能夠解決這個問題。如果您有同樣的問題,請不要忘記您的網絡服務器可能/希望不會以 root 身份運行。 嘗試以您的網絡服務器用戶或具有類似權限的用戶身份登錄,然後嘗試自己運行命令。