اتصال به فضای ذخیرهسازی ابری در برنامههای PHP
پروژه و کدهای مورد استفاده در ویدیوی فوق در اینجا قابل مشاهده و دسترسی هستند.
برای استفاده از Object Storage در برنامههای PHP، میتوانید از پکیج aws/aws-sdk-php استفاده کنید که بایستی با دستور زیر، آن را در پروژه خود، نصب کنید:
پس از آن، کافیست تا طبق مستندات ایجاد کلید، یک کلید جدید برای باکت خود بسازید. اطلاعات مربوط به ENDPOINT و نام باکت نیز در صفحه تنظیمات، در بخش دسترسی با SDK، برای شما قرار گرفته است. در نهایت نیز، بایستی اطلاعات مربوط به Object Storage خود را به متغیرهای محیطی برنامه خود، اضافه کنید؛ به عنوان مثال:
تمامی کارها انجام شده است و میتوانید از Object Storage در برنامه خود، استفاده کنید؛ در ادامه، مثالهایی از این مورد برایتان آورده شده است:
نمونه کد آپلود فایل
نمونه کد دانلود فایل
نمونه کد دریافت لینک موقت دانلود فایل
نمونه کد دریافت لینک موقت دانلود فایل با دامنه اختصاصی
اگر طبق مستندات اتصال دامنه، یک دامنه اختصاصی به باکت خود متصل کردهاید، سادهترین روش برای دریافت لینک موقت (Presigned) با دامنه اختصاصی این است که لینک را با Endpoint اصلی لیارا تولید کنید و سپس مقدار Host آن را به دامنه اختصاصی تغییر دهید.
برای این کار، لینک باید بهصورت virtual-hosted ساخته شود؛ یعنی نام باکت در ابتدای Host قرار بگیرد (مانند bucket-name.storage.c2.liara.site) و نه در مسیر لینک. کلاینت S3 در PHP بهصورت پیشفرض لینک را بهصورت virtual-hosted میسازد؛ بنابراین کافیست گزینهی use_path_style_endpoint را در تنظیمات کلاینت برابر با true قرار ندهید. در قطعه کد زیر، $s3 و $bucketName همانند مثال قبلی تعریف شدهاند:
فقط مقدار host را تغییر دهید و پارامترهای *-X-Amz موجود در لینک را دستکاری نکنید؛ در غیر این صورت امضای لینک نامعتبر میشود و دسترسی به فایل با خطا مواجه خواهد شد.










