[英]unlink cannot delete file
我对使用PHP unlink()在ubuntu中删除文件感到沮丧。
我创建了一个非常简单的模拟如下:
“image.png”仍然存在于“files”目录中
这是delete.php的php脚本:
$filename = 'image.png';
$file = $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'files' . DIRECTORY_SEPARATOR . $filename;
unlink($file);
我还尝试了以下脚本:
$filename = 'image.png';
$dir = $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'files';
chdir($dir);
unlink($filename);
但仍无法删除该文件。
Unlink会在失败时抛出警告。 检查E_WARNING是否可见,以便了解最新情况。
它通常归结为用户权利。 请记住,如果您的脚本是由浏览器执行的,通常名为wwwrun
或wwwdata
(或类似的东西)的用户正在您的服务器上执行它。
检查此用户是否有权删除,然后重试。
目录的文件夹/所有者可以是与用于运行php的用户不同的用户。
您应该创建一个分配了用户php的文件夹。 如果您不能这样做,请让您的ISP进行此操作。 这就是我解决类似问题的方法。
一个用户无法删除unix系统上其他用户的文件。 如果您将其设置为777,那么您可以将其删除...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.