Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.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
codeigniter允许原始图像上传吗?_Codeigniter_Amazon S3_Upload_Dropzone.js - Fatal编程技术网

codeigniter允许原始图像上传吗?

codeigniter允许原始图像上传吗?,codeigniter,amazon-s3,upload,dropzone.js,Codeigniter,Amazon S3,Upload,Dropzone.js,Codeigniter不允许使用以下配置上载原始图像文件(CR2、NEF、DNG等) 我正在使用dropzone.js上传图像/视频文件。将文件拖动到dropzone窗口时,文件将上载到临时文件夹,提交时,文件将移动到所需的存储位置 我可以上传mime_类型的文件image/jpeg | image/png | image/gif | video/*。但是,扩展名为.CR2!的原始图像文件!。DNGetc未上传。如果您没有选择要上载的文件,它总是抛出错误 通过分析,我发现默认的“上载”库只允许j

Codeigniter不允许使用以下配置上载原始图像文件(CR2、NEF、DNG等)

我正在使用dropzone.js上传图像/视频文件。将文件拖动到dropzone窗口时,文件将上载到临时文件夹,提交时,文件将移动到所需的存储位置

我可以上传mime_类型的文件
image/jpeg | image/png | image/gif | video/*
。但是,扩展名为
.CR2!的原始图像文件!。DNG
etc未上传。如果您没有选择要上载的文件,它总是抛出错误

通过分析,我发现默认的“上载”库只允许
jpeg | png | gif
和其他支持jpeg的图像格式

 $config['upload_path'] = './upload_files/temp/';
 $config['allowed_types'] = 'jpeg|png|jpg|cr2|dng|srf|mp4|mov|mpg|mpeg|wmv|mkv';
 $config['encrypt_name'] = TRUE;
 $this->load->library('upload'); 
 $this->upload->initialize($config);

 if (!$this->upload->do_upload('file')) {
  $msg = $this->upload->display_errors('', '');
  header("HTTP/1.1 404 Not Found");
  return $msg;
 } else {
      ....
 }
更新上载库以允许所需的文件类型是仅选项还是存在其他选项

其次,如果要将文件上载到不同的存储服务器,即AWS S3或其他服务器,是否总是明智地上载到本地临时文件夹,然后将其推送到远程服务器


TIA

查看mime类型配置文件@config/mimes.php并添加

'dng'   =>  array('image/x-adobe-dng'),
'cr2'   =>  array('image/x-dcraw', 'image/x-canon-cr2'),
您可以找到原始图像的mime类型列表

更新恢复评论:

原始文件是相当大的文件,因此请确保在php.ini设置中满足图像大小:相应地更改
post\u max\u size


它适用于PHP7.2.20

查看mime类型配置文件@config/mimes.php并添加

'dng'   =>  array('image/x-adobe-dng'),
'cr2'   =>  array('image/x-dcraw', 'image/x-canon-cr2'),
您可以找到原始图像的mime类型列表

更新恢复评论:

原始文件是相当大的文件,因此请确保在php.ini设置中满足图像大小:相应地更改
post\u max\u size


它在PHP7.2.20上工作

检查这个:检查这个:嘿@Vickel,谢谢你。添加mime类型,重新启动apache服务器并尝试上载
.CR2
文件。我仍然收到相同的错误。文件大小是多少?上传文件大小是21MB;在php.ini中,值设置为
max_execution_time=360
upload_max_filesize=40M
OK,我刚刚仔细检查了一下,它在PHP5.5.0(在我的本地主机上)上不起作用,这里我需要$config['allowed_types']='*'来让它起作用),但它可以在我的共享生产服务器上使用PHP7.2.20(我没有更改php.ini,最多8MB的文件也可以),默认值
post_max_size
参数为8M,修改后上传成功。谢谢你的支持。嘿@Vickel,谢谢你的支持。添加mime类型,重新启动apache服务器并尝试上载
.CR2
文件。我仍然收到相同的错误。文件大小是多少?上传文件大小是21MB;在php.ini中,值设置为
max_execution_time=360
upload_max_filesize=40M
OK,我刚刚仔细检查了一下,它在PHP5.5.0(在我的本地主机上)上不起作用,这里我需要$config['allowed_types']='*'来让它起作用),但它可以在我的共享生产服务器上使用PHP7.2.20(我没有更改php.ini,最多8MB的文件也可以),默认值
post_max_size
参数为8M,修改后上传成功。谢谢你的支持。