2014-03-03 3 views
0

메신저 symfony2를 프레임 워크 형태로 사용하여 API (아마존 s3과 동일) 에서처럼 내 ceph 클라이언트에 연결하고 싶습니다.Amazon S3 클라이언트에서 호스트를 재정의하는 방법은 무엇입니까?

composer.json : 나는 지금까지 무엇을 가지고 내 파일 시스템

을 관리 할 수 ​​gaufrette 번들을 사용하여 메신저

"knplabs/knp-gaufrette-bundle": "dev-master",   
    "aws/aws-sdk-php": "*", 
    "amazonwebservices/aws-sdk-for-php": "*" 

입니다

:
config.yml 
    mydrive.aws_s3.client: 
     class: Aws\S3\S3Client 
     factory_class: Aws\S3\S3Client 
     factory_method: 'factory' 
     arguments: 
      - 
       key: %my_drive_s3_key% 
       secret: %my_drive_s3_secret_key% 
       region: %my_drive_s3_region% 
knp_gaufrette: 
    adapters: 
     my_drive_s3_v2: 
      aws_s3: 
       service_id: 'mydrive.aws_s3.client' 
       bucket_name: '%my_drive_s3_bucket_name%' 
       options: 
        create: true 
        directory: '%my_drive_s3_directory%' 
    filesystems: 
     user_fs: 
      adapter: my_drive_s3_v2 
      alias:  my_drive_filesystem 
    stream_wrapper: 
     protocol: data 

그렇게 API의이 길을 나는 것입니다 다음 amazon s3 serwers 에 연결하고 있지만 amazon s3 serwers를 사용하고 있지 않습니다. 내 자신의 cephers를 사용하고 있습니다. 내 질문에 내가 어떻게 아마존 s3 클라이언트에서 호스트를 변경합니까?

지금이 같다 : [curl] 56: Problem (2) in the Chunked-Encoded data [url] https://mybucket.s3.amazonaws.com

그리고 난이 https://mybucket.s3.amazonaws.com 여기 https://mybucket.s3.custom.com

난 다음에 API가되고 싶어요 : https://github.com/KnpLabs/KnpGaufretteBundle#awss3

+0

PHP 2.x 용 AWS SDK 만 사용하고 있으므로 composer.json에 "amazonwebservices/aws-sdk-for-php"를 포함 할 필요가 없습니다. –

답변

0

base_url 매개 변수를 설정하십시오.

config.yml 
    mydrive.aws_s3.client: 
     class: Aws\S3\S3Client 
     factory_class: Aws\S3\S3Client 
     factory_method: 'factory' 
     arguments: 
      - 
       key: %my_drive_s3_key% 
       secret: %my_drive_s3_secret_key% 
       region: %my_drive_s3_region% 
       base_url: https://mybucket.s3.custom.com 

client configuration options 모두 볼 수 PHP 사용 설명서의 AWS SDK를 확인하시기 바랍니다.