Amazon web services laravel 4:aws-使用自定义配置文件

Amazon web services laravel 4:aws-使用自定义配置文件,amazon-web-services,laravel-4,config,Amazon Web Services,Laravel 4,Config,我将Larvel4与AWS sdk一起使用。我想添加另一个具有不同密钥和区域的AWS服务。当我只使用了一个AWS服务(例如SES)时,我将我的密钥放在/app/config/AWS/AWS sdk php laravel中,就在数组中'secret'=>'xxxxxxxxxxxx',现在一切正常,我想添加另一个服务(例如S3)。因此,我在同一目录中创建了自定义配置文件: configaws.php(使用chmod 777): 并在我的config.php文件中使用这一行 问题是Laravel找不

我将Larvel4与AWS sdk一起使用。我想添加另一个具有不同密钥和区域的AWS服务。当我只使用了一个AWS服务(例如SES)时,我将我的密钥放在/app/config/AWS/AWS sdk php laravel中,就在数组中
'secret'=>'xxxxxxxxxxxx',
现在一切正常,我想添加另一个服务(例如S3)。因此,我在同一目录中创建了自定义配置文件:

configaws.php(使用chmod 777):

并在我的config.php文件中使用这一行 问题是Laravel找不到这个文件,我遇到了异常“无法打开configaws.php进行读取”

我的简单问题是我应该把
configaws.php
文件放在哪里? 因为我尝试了很多选择,但都不适合我

是否有其他选项可以为amazon服务使用2个不同的键

solution:
I used amazon's service IAM to create new user with permissions for S3 and SES
and used his key for my app. 

如果您使用的是Laravel 4.1+,最好使用
dot
文件存储敏感信息

对于“真正的”应用程序,建议将所有敏感配置保留在配置文件之外。数据库密码、条带API密钥和加密密钥等内容应尽可能远离配置文件。那么,我们应该把它们放在哪里呢?谢天谢地,Laravel提供了一个非常简单的解决方案,可以使用“点”文件保护这些类型的配置项

假设您的环境是生产环境,或者您可以通过阅读以下文档来检查您的环境

对于生产环境,在应用程序的项目根目录中创建一个
.env.php
,并添加AWS信息,如下所示

// .env.php
<?php

return array(
    //SesClient
    'AWS_SES_KEY'      => 'XXX',
    'AWS_SES_SECRET'   => 'XXX',
    'AWS_SES_REGION'   => 'XXX',

   //S3Client
    'AWS_S3_KEY'      => 'XXX',
    'AWS_S3_SECRET'   => 'XXX',
    'AWS_S3_REGION'   => 'XXX',

);
有关更多信息,请查看Laravel文档:

// .env.php
<?php

return array(
    //SesClient
    'AWS_SES_KEY'      => 'XXX',
    'AWS_SES_SECRET'   => 'XXX',
    'AWS_SES_REGION'   => 'XXX',

   //S3Client
    'AWS_S3_KEY'      => 'XXX',
    'AWS_S3_SECRET'   => 'XXX',
    'AWS_S3_REGION'   => 'XXX',

);
<?php
echo $_ENV['AWS_S3_KEY'];
echo $_ENV['AWS_S3_SECRET'];