Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使用PHP脚本创建文件_Php_Linux_Debian - Fatal编程技术网

无法使用PHP脚本创建文件

无法使用PHP脚本创建文件,php,linux,debian,Php,Linux,Debian,我有一个创建文件的简单PHP脚本 $path = "/logs/myapp/file.txt"; touch($path); $logfile = fopen($path, "w") or die('Unable to create the file.'); 但是当我从web浏览器mydomain.com/writetofile.php调用脚本时,脚本返回无法创建文件 我在Linux Debian Jessie机器上,PHP脚本以admin用户身份运行(由PHP脚本和grepping进程(ps

我有一个创建文件的简单PHP脚本

$path = "/logs/myapp/file.txt";
touch($path);
$logfile = fopen($path, "w") or die('Unable to create the file.');
但是当我从web浏览器
mydomain.com/writetofile.php
调用脚本时,脚本返回无法创建文件

我在Linux Debian Jessie机器上,PHP脚本以
admin
用户身份运行(由PHP脚本和grepping进程(
ps
)列表中的
whoami
确认)。(如果有必要的话,我正在使用VestaCP。)
/logs/myapp
目录具有
755
admin:admin
的权限。将权限设置为
777
也不起作用

但是,如果我使用带有
admin
user的命令行运行相同的脚本,它就可以工作

编辑:

PHP脚本位于
/home/admin/web/mydomain.com/public\u html
可写()
此路径返回
true
。但是,
是可写的()
/logs/myapp
返回0,即使目录的所有者和组是具有755权限的
admin


EDIT2:我的web服务器是以Apache为后端的nginx。

您是使用Apache吗?。用户forma apache它不是admin,它是www-data或apache。它是nginx服务器。是否可以选择先创建文件,然后手动设置权限,以便www-data(假设是正在编写的组)能够只更新文件?告诉您如何修复这一问题对您没有任何好处,此主机上的权限模型似乎配置得非常糟糕(并不是因为它不允许您写入文件)。