PHP 执行权限被拒绝

标签 php linux compiler-construction permissions exec

我正在尝试使用 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/

相关文章:

php - 从数据库中获取数据并将其分隔在不同的数组中

php - 如何检查 URL 是否存在 - 错误 404? (使用PHP)

php - IMAP 已安装但无法工作?

android - Eclipse ADT插件在linux上注销

linux - 使用 GStreamer 通过 RTSP 提供 RTP 流

assembly - 编译器在这段汇编代码中做了什么?

parsing - 为什么 NASM 在操作数中使用有效指令助记符作为符号名称没有问题?

php - SELECT * FROM $_POST[] - PHP mySQL 格式化

android - protobyname 错误的任何解决方法?

linux - 将 Linux 源代码解析为抽象语法树