Linux编辑特权对网络服务



我目前正在从事一个项目,该项目将动态获取一些我的工作信息,并将其显示在HTML页面中。为了实现这一目标,我编写了Python脚本,该脚本将使用PHP WebService调用。脚本需要编辑一些文件才能工作。基本上PHP使用 $output = shell_exec('python script.py');
问题是,如果调用了网络服务,则该脚本没有编辑文件所需的权限。因此,Web服务器应使用 $output = shell_exec('sudo python script.py');
拨打脚本我可能需要将权限更改为项目文件夹,但我不知道如何。一些其他信息:
我使用的是Raspberry Pi 3,并在Raspian上安装了Lamp Shost作为Web服务器文件夹结构如下:
ProjectFolder
|
- 样式(包含CSS)
-script.py
-script2.py
-filetoedit1.txt
-filetoedit2.html

任何帮助都将受到赞赏!

正如@wpercy所建议的,您已经确定了哪个用户正在执行文件。通常,该用户被称为 www-data !找出哪个用户正在调用服务使用 ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d -f1
找出用户后,您必须更改文件夹的权限。该命令应该像 chown -R www-data:www-data /var/www/html/Projectfolder

一样

特别感谢Wpercy!

最新更新