无法通过Cron脚本将文件保存到Amazon S3

时间:2014-02-04 06:07:22

标签: php amazon-s3 cron crontab

我创建了一个cron脚本,它从本地获取文件并将文件保存到Amazon S3。当我从命令行或通过浏览器执行文件时,它完全正常。但是当它在crontab下时,它无法将文件保存到亚马逊s3。

$phpThumb = new phpThumb();
$phpThumb->setSourceFilename($img); 
$phpThumb->setParameter('config_output_format', 'jpeg');
$phpThumb->setParameter('config_allow_src_above_docroot', true);
$phpThumb->setParameter('w', 640);
$phpThumb->setParameter('h', 480);
$phpThumb->setParameter('q', 50);
$phpThumb->setParameter('zc', 1);
$phpThumb->setParameter('config_cache_disable_warning', true);
$phpThumb->setParameter('config_imagemagick_path', null);
$phpThumb->setParameter('config_prefer_imagemagick', false);
$extension = pathinfo($img,PATHINFO_EXTENSION); 

if(empty($extension))
  $extension = 'jpg';
$fileExternal = pathinfo($img);
$destination = 'Uploads/phpthumb/'.uniqid().$fileExternal['filename'].".".$extension;
if ($phpThumb->GenerateThumbnail()) { 
$phpThumb->RenderToFile('../'.$destination); // works over here in cron script
$s3->putObjectFile($destination, 'prod_images/offers', basename($destination), S3::ACL_PUBLIC_READ);

代码工作漂亮的文件如果我直接执行它。但是通过cron,它在putObjectFile Line上失败了。

cron条目

*/45 * * * * php /var/www/direct/runparser.php >> /var/log/apache2/runparser.txt /dev/null

此外,runparser.txt

中没有任何内容

0 个答案:

没有答案