Laravel AWS S3 上传照片错误(区域错误?)

Wal*_*ase 5 php amazon-s3 amazon-web-services laravel

在“ https://s3.your-region.amazonaws.com/your-bucket?prefix=abc%2F1468895496.jpg%2F&max-keys=1&encoding-type=url ”上执行“ListObjects”时出错;AWS HTTP 错误:cURL 错误 6:无法解析主机:s3.your-region.amazonaws.com(请参阅 http://curl.haxx.se/libcurl/c/libcurl-errors.html

<?php
namespace App\Http\Controllers;
use Illuminate\Contracts\Filesystem\Filesystem;
use App\Product;
use Illuminate\Http\Request;
class ProductController extends Controller
{
...
public function store(Request $request)
    {
        $image = $request->file('file');
        $imageFileName = time() . '.' . $image->getClientOriginalExtension();
        $s3 = \Storage::disk('s3');
        $filePath = '/abc/' . $imageFileName;
        $s3->put($filePath, file_get_contents($image), 'public');
        return redirect()->action('ProductController@index');
    }
Run Code Online (Sandbox Code Playgroud)

xmh*_*fiz 4

我认为您尚未设置配置,config/filesystems.php因为等 是默认值。your-regionyour-bucket

在此部分进行更改并确保密钥、秘密、区域和存储桶已填满。

'disks' => [

    'local' => [
        'driver' => 'local',
        'root' => storage_path('app'),
    ],

    'public' => [
        'driver' => 'local',
        'root' => storage_path('app/public'),
        'visibility' => 'public',
    ],

    // s3 part is here
    's3' => [
        'driver' => 's3',
        'key' => 'your-key',
        'secret' => 'your-secret',
        'region' => 'ap-southeast-1', // this is the region setting
        'bucket' => 'your-bucket',
    ],

],
Run Code Online (Sandbox Code Playgroud)