[php] PHP 라이브러리 S3 오브젝트 수명 주기 설정

Amazon Simple Storage Service (S3)에서 객체 수명 주기(lifecycle)를 설정하면 버킷에 저장된 객체가 일정 시간이 지난 후 자동으로 삭제되거나 스토리지 클래스가 변경됩니다. PHP를 사용하여 S3 버킷의 객체 수명 주기를 설정하는 방법에 대해 알아보겠습니다.

Amazon S3 PHP 라이브러리 설치

먼저 aws/aws-sdk-php 라이브러리를 사용하여 PHP 프로젝트에 Amazon S3 라이브러리를 설치합니다. Composer를 사용하면 간단하게 설치할 수 있습니다.

composer require aws/aws-sdk-php

S3 객체 수명 주기 설정

다음은 PHP를 사용하여 Amazon S3 객체 수명 주기를 설정하는 예제 코드입니다.

require 'vendor/autoload.php';

use Aws\S3\S3Client;
use Aws\Exception\AwsException;

// S3 클라이언트 생성
$s3Client = new S3Client([
    'version' => 'latest',
    'region' => 'your-aws-region',
    'credentials' => [
        'key'    => 'your-access-key',
        'secret' => 'your-secret-key',
    ]
]);

// 객체 수명 주기 설정
try {
    $result = $s3Client->putBucketLifecycleConfiguration([
        'Bucket' => 'your-bucket-name',
        'LifecycleConfiguration' => [
            'Rules' => [
                [
                    'ID' => 'RuleID',
                    'Prefix' => 'your-object-prefix',
                    'Status' => 'Enabled',
                    'Expiration' => [
                        'Days' => 30,
                    ],
                ],
            ],
        ],
    ]);
    echo '객체 수명 주기 설정이 성공적으로 완료되었습니다.';
} catch (AwsException $e) {
    echo $e->getMessage();
}

위 코드에서 your-aws-region, your-access-key, your-secret-key, your-bucket-name, your-object-prefix를 실제 값으로 대체해야 합니다. 또한 Expiration을 통해 객체의 수명을 일 수로 지정할 수 있습니다.

마무리

이제 PHP를 사용하여 Amazon S3 버킷에서 객체 수명 주기를 설정하는 방법을 알아보았습니다. 객체 수명 주기를 설정함으로써 데이터 관리와 비용 효율성을 높일 수 있습니다. 추가적인 설정이나 세부 정보는 Amazon S3 개발자 가이드를 참고해 주세요.