在我的脚本中,我需要连接到ftp并下载几个zip文件,然后在目录中提取它们。我已经实现了这一点,当我通过浏览器运行脚本时,它按预期工作,但当crontab
运行此脚本时,它会抛出我错误,它未能提取文件。我试着研究,但我没有运气,我不明白这是为什么。
A PHP Error was encountered
Severity: Warning
Message ZipArchive::extractTo(/home/name/files/complete//filename.txt): failed to open stream: Permission denied
Filename: controllers/import.php
Line Number: 66
脚本:
$txt_file: "/home/name/files/complete/Data.zip";
$server_txt_file = "/TXT/Data.zip";
if (ftp_get($ftp_conn, $txt_file, $server_txt_file, FTP_BINARY))
{
$zip = new ZipArchive;
if ($zip->open($txt_file) === TRUE)
{
$zip->extractTo('/home/name/files/complete/');
$zip->close();
unlink($txt_file);
}
}
我正在努力解决这个问题,但我不能找出问题是什么。
错误告诉你所有你需要知道的:
failed to open stream: Permission denied
。
所以你的php进程没有权限写到指定的文件夹。所以你应该更改指定文件夹的权限