Laravel的文件系统与s3使用了错误的网址

问题描述:

我正在使用Laravel的Filesystem在s3上存储项目,并且我收到了错误的URL。Laravel的文件系统与s3使用了错误的网址

Storage::disk('s3')->put('file.txt', 'Contents'); 

给我的错误

CurlException in CurlMulti.php line 359: 
[curl] 6: Could not resolve host: mybucket.s3.website-us-east-1.amazonaws.com [url] https://mybucket.s3.website-us-east-1.amazonaws.com/file.txt 

此URL

mybucket.s3.website-us-east-1.amazonaws.com

应该

mybucket.s3-website-us-east-1.amazonaws.com

配置/ filesystem.php

's3' => [ 
    'driver' => 's3', 
    'key' => env('S3_KEY'), 
    'secret' => env('S3_SECRET'), 
    'region' => env('S3_REGION'), 
    'bucket' => env('S3_BUCKET'), 
], 

.ENV

S3_KEY=MYKEY 
S3_SECRET=mySecr3tmySecr3tmySecr3tmySecr3t 
S3_REGION=website-us-east-1 
S3_BUCKET=mybucket 
+0

也许'S3_REGION = s3-website-us-east-1' ...? – 2015-04-03 21:52:57

+0

是的,我试过它给了我'mybucket.s3.s3-website-us-east-1.amazonaws.com' – whoacowboy 2015-04-03 21:57:16

+1

正如在这里添加的,删除区域的解决方案为我工作:http://laravel.io/forum/04-03-2015-filesystem-with-s3-giving-me-the-wrong-s3-url – 2015-04-21 02:32:14

我终于找到了这两个答案。

One solution是消除该地区完全参考

's3' => [ 
    'driver' => 's3', 
    'key' => env('S3_KEY'), 
    'secret' => env('S3_SECRET'), 
    'bucket' => env('S3_BUCKET'), 
], 

The other solution这是我最终去用是这样的:

's3' => [ 
    'driver' => 's3', 
    'key' => env('AWS_KEY'), 
    'secret' => env('AWS_SECRET_KEY'), 
    'region' => Aws\Common\Enum\Region::OREGON, 
    'bucket' => 'app-images', 
], 

的区域可以在A3 GitHub Repo找到。

class Region extends Enum 
{ 
    const US_EAST_1   = 'us-east-1'; 
    const VIRGINIA   = 'us-east-1'; 
    const NORTHERN_VIRGINIA = 'us-east-1'; 
    const US_WEST_1   = 'us-west-1'; 
    const CALIFORNIA   = 'us-west-1'; 
    const NORTHERN_CALIFORNIA = 'us-west-1'; 
    const US_WEST_2   = 'us-west-2'; 
    const OREGON    = 'us-west-2'; 
    const EU_WEST_1   = 'eu-west-1'; 
    const IRELAND    = 'eu-west-1'; 
    const LONDON    = 'eu-west-2'; 

    const EU_CENTRAL_1  = 'eu-central-1'; 
    const FRANKFURT   = 'eu-central-1'; 
    const AP_SOUTHEAST_1  = 'ap-southeast-1'; 
    const SINGAPORE   = 'ap-southeast-1'; 
    const AP_SOUTHEAST_2  = 'ap-southeast-2'; 
    const SYDNEY    = 'ap-southeast-2'; 
    const AP_NORTHEAST_1  = 'ap-northeast-1'; 
    const TOKYO    = 'ap-northeast-1'; 
    const SA_EAST_1   = 'sa-east-1'; 
    const SAO_PAULO   = 'sa-east-1'; 
    const CN_NORTH_1   = 'cn-north-1'; 
    const BEIJING    = 'cn-north-1'; 
    const US_GOV_WEST_1  = 'us-gov-west-1'; 
    const GOV_CLOUD_US  = 'us-gov-west-1'; 
} 
+0

我有相同的大坝问题,像2小时,我有没有想法为什么这样的事情是如此难以找到,这么多thanx这个 – ctf0 2016-01-24 20:54:03