[英]PHP Exec Permission Denied
我正在嘗試使用PHP編譯文件。 PHP代碼是...
if(isset($_POST['submit'])){
$filename= "source/source.c";
$fp = fopen($filename, "w");
fwrite($fp, $_POST['answer']);
// Now compile...
echo system("gcc $filename 2>&1");
}
我得到的輸出為
/usr/bin/ld: cannot open output file a.out: Permission denied collect2: ld returned 1 exit status 1
我不知道代碼或權限有什么問題。 我在使用LAMP Stack的Ubuntu 11.04上。 我試過將文件夾整理為www-data並將chmoding為777。 但是我仍然遇到同樣的錯誤。
任何關於做什么的指導都受到高度贊賞:)
謝謝已經,
最好的祝福
阿曼·高塔姆(Aman Gautam)
檢查輸出目錄的權限,我看到一個$ _POST,因此運行腳本的似乎是apache,檢查apache是否可以在目錄中寫入,並覆蓋現有的a.out。
如果您已檢查許可,但它是777,但仍然不起作用,則可以檢查應用程序防護或Linux是否在系統中處於活動狀態。 禁用應用程序防護:
通過輸入以下命令,可以禁用AppArmor,並卸載內核模塊:
sudo /etc/init.d/apparmor停止
sudo update-rc.d -f apparmor刪除
重啟
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.