我正在尝试使用 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 上。 我试过将文件夹 chown 到 www-data 并将 chmoding 到 777 。但我仍然遇到同样的错误。
非常感谢任何有关操作的指导:)
谢谢,
最好的问候
阿曼·高塔姆
最佳答案
检查输出目录的权限,我看到一个$_POST,所以好像是apache在运行脚本,检查apache是否可以写入目录,同时覆盖现有的a.out。
关于PHP 执行权限被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9978828/