Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.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
Php 在AmazonS3中上载图像时,它告诉我文件已损坏_Php_Laravel_File_Amazon S3 - Fatal编程技术网

Php 在AmazonS3中上载图像时,它告诉我文件已损坏

Php 在AmazonS3中上载图像时,它告诉我文件已损坏,php,laravel,file,amazon-s3,Php,Laravel,File,Amazon S3,目前,我想将客户端选择的图像上载到Amazon S3服务,事实上,它似乎已经这样做了,因为它上载了一个文件,并告诉我它的重量为92kb,与我选择的文件相同,但当我想用路径打开它时,它会给我以下错误: 无法显示图像,因为它包含错误 拉威尔代码 public function SaveImage($request){ if ($request->hasFile('inputFile')) { $image = $request->file('inputFile')

目前,我想将客户端选择的图像上载到Amazon S3服务,事实上,它似乎已经这样做了,因为它上载了一个文件,并告诉我它的重量为92kb,与我选择的文件相同,但当我想用路径打开它时,它会给我以下错误:

无法显示图像
,因为它包含错误

拉威尔代码

public function SaveImage($request){
    if ($request->hasFile('inputFile')) {
        $image = $request->file('inputFile');
       $fecha= date("m-d-y");
        $name = $fecha."_".$request->txtNombre.'.'.$image->getClientOriginalExtension();
       $destinationPath = public_path('UploadProfile');
        $image->move($destinationPath, $name);
        $filePath=$destinationPath."\\".$name;
        $initPath="Perfil\\".$name;
      Storage::disk('s3')->put($initPath, $filePath);
    return $urlImage= Storage::cloud()->url($initPath);
    }
}
最奇怪的是,它没有标记我的错误,一切都正常运行,但如果它显示文件是在存储桶的面板中上载的,此外,如果我直接通过存储桶上载,并且如果它以正确的方式打开,则打开路径

图像路径如下所示:

https://katanasystem.s3-us-west-1.amazonaws.com/Profile/01-05-20_david.jpg

访问被拒绝。如果要使此映像可公开访问,请检查您的存储桶策略。您似乎没有上载文件。您仅在服务器上上载位置。试试这个
Storage::disk('s3')->put($initPath,$image->\uu-toString)
存储::磁盘('s3')->put($initPath,$image)