【发布时间】:2015-08-11 09:11:18
【问题描述】:
我正在尝试通过以用户 www-data 运行 python 脚本来写入文件。当我使用以下命令运行脚本时:
sudo python my_script.py
它写得很好。当我将 PHP 脚本作为 www-data 运行时,它不会写入。权限:
folder(PiControl....contains status_log file): drwxrwxrwx
file(status_log....the file I am trying to write to): -rwxrwxrwx User:www-data group:www-data
写入文件 Python 代码:
#!/usr/bin/python
import datetime
status="on"
with open("status_log", "a") as myfile:
myfile.write("{} {} {}".format("<br>light is now:", status,datetime.datetime.now()))
我创建了一个网页按钮来运行文件
谁能告诉我这里要改什么?
【问题讨论】:
-
无论文件在哪里,www-data 是否都可以访问上面的所有文件夹?如果祖父母或曾祖父母仍被锁定,则让文件及其直接父级可写是无关紧要的。
-
我有一个从我桌面上的文件夹到我的 www/ 目录的符号链接来提供网页。需要允许来自我桌面上的文件夹的路径还是来自实际 www/ 文件夹的路径?
-
你能把写文件的两个脚本的部分贴出来吗?
-
符号链接不能绕过权限。 www-data 用户将需要访问您的主目录,这是您真正不应该做的事情...... www-data 应该是最低必要的 privs 帐户。让它访问系统上的其他东西是个坏主意。
-
是的,我意识到这是非常不安全的.....我只是在玩 Python 和树莓派
标签: php python permissions