我想在使用exec()的Drupal中創建一個模塊。如果我在瀏覽器中手動加載它,或者當我將它作爲su -l www-data運行時,腳本運行正常,但是當由Drupal作爲模塊運行時,exec函數無法運行。我想知道如何從中獲得更多的數據以更好地進行調試,或者如果有人可能知道Drupal爲什麼不讓exec運行。問題與執行(),具體在Drupal
當被Drupal加載時,整個腳本的執行沒有給我任何警告或錯誤,我覺得很奇怪。如果我在exec()之後添加or die('could not exec');
,那麼當我加載我的drupal頁面時,它確實顯示我只是「無法執行」而沒有其他任何內容。
任何想法?謝謝!
[編輯]
我得到這個通過指定php文件我想給exec的顯式路徑工作。也就是說,我改變了: exec('php mymodule.helper',$output);
到
exec('php /var/www/mydrupal/modules/mymodule/mymodule.helper',$output);
[EDIT2]
其實,我現在把它改爲:
exec ('php ' . __DIR__ . '/mymodule.helper',$output);
這完美的作品。
你想要執行什麼? – hummingBird 2010-11-01 21:41:13
具體來說,'exec('php mymodule.helper',$ output);' – Joseph 2010-11-01 21:43:30
如果你在命令中添加「2>&1」,它說什麼? – user187291 2010-11-01 22:02:17