我有 sript.php
当我在 Linux 终端中运行脚本时,它可以工作并保存文件。 当我在 crontab 中设置它时,脚本启动,但文件未保存。 我还将目录和文件的 chmod 权限更改为 777。
$url = 'https://www.example.cz/example.xml';
$file_name = basename($url);
if (file_put_contents($file_name, file_get_contents($url)))
{
echo "File downloaded successfully";
}
else
{
echo "File downloading failed.";
}
谢谢您的建议。
在我看来,当您在与输出文件相同的目录中运行脚本时,它可以从终端运行。 crontab 将需要服务器上的完整路径,而不仅仅是文件名。您需要在此行添加文件名的完整路径,
$file_name = '/path/to/file/' 。基本名称($url);
假设执行 cron 脚本的用户具有输出文件及其目录所需的权限,这应该可以工作。