【问题标题】:Apache user permission阿帕奇用户权限
【发布时间】:2013-11-17 00:06:35
【问题描述】:

我安装了一个 Apache 服务器,它公开了一个我一直在开发的用 PHP 编写的网站。该网站的功能之一是将新数据插入 MySQL 数据库。当要插入数据时,用户按下一个链接,该链接又调用一个 PHP 脚本,其中包含这样的一行

$script_return = exec('python some_script.py);

python 脚本会在站点根目录的根目录下生成多个文件。创建这些文件后,脚本以特定系统命名它们并将它们移动到子文件夹(通过shutil)。当我手动运行脚本时,一切正常。但是,当我尝试从网站运行时,文件已创建但不会移动。 .php 脚本和 .py 脚本都有 777 权限,属于 www-data 组,但仍然不起作用。

任何帮助将不胜感激。

【问题讨论】:

    标签: php python apache permissions


    【解决方案1】:

    听起来 www-data 用户在您的目标文件夹中可能没有正确的权限。如果 Apache 可以创建文件,它应该有权移动文件。

    为什么不直接在您想要的位置创建文件?这也会给你一个关于问题的更具体的错误。

    你也可以让 python 脚本在某个地方写一个日志文件,然后你可以检查。

    整理好之后,我建议删除 777 权限。

    【讨论】:

    • python 脚本执行另一个创建文件的终端命令(我无法直接控制的命令)。因此,默认情况下会在根目录中创建输出文件——这是我无法更改的。我根本不明白 www-data 用户如何有权创建文件但不能移动它们?测试时目标目录也有 777。
    猜你喜欢
    • 2012-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-15
    • 2011-02-25
    • 1970-01-01
    • 2018-07-09
    相关资源
    最近更新 更多