diff --git a/app/service/OssService.php b/app/service/OssService.php index f95ad54..e8e7452 100644 --- a/app/service/OssService.php +++ b/app/service/OssService.php @@ -15,11 +15,26 @@ class OssService public function __construct() { - $this->accessKeyId = env('OSS_ACCESS_KEY_ID'); - $this->accessKeySecret = env('OSS_ACCESS_KEY_SECRET'); - $this->bucket = env('OSS_BUCKET', 'vehicle-album'); - $this->endpoint = env('OSS_ENDPOINT', 'https://oss-cn-beijing.aliyuncs.com'); - $this->ossClient = new OssClient($this->accessKeyId, $this->accessKeySecret, $this->endpoint); + try { + $this->accessKeyId = env('OSS_ACCESS_KEY_ID'); + $this->accessKeySecret = env('OSS_ACCESS_KEY_SECRET'); + $this->bucket = env('OSS_BUCKET', 'vehicle-album'); + $this->endpoint = env('OSS_ENDPOINT', 'https://oss-cn-beijing.aliyuncs.com'); + + // 记录配置信息 + error_log("OSS Configuration:"); + error_log("AccessKeyId: " . substr($this->accessKeyId, 0, 4) . "****"); + error_log("Bucket: " . $this->bucket); + error_log("Endpoint: " . $this->endpoint); + + $this->ossClient = new OssClient($this->accessKeyId, $this->accessKeySecret, $this->endpoint); + + // 测试连接 + $this->ossClient->doesBucketExist($this->bucket); + } catch (OssException $e) { + error_log("OSS Client Initialization Error: " . $e->getMessage()); + throw new \RuntimeException('OSS Client Initialization Error: ' . $e->getMessage()); + } } /** @@ -49,7 +64,19 @@ class OssService */ public function generatePrivateUrl($objectKey, $expireTime = 3600) { - // 生成 OSS 私有 URL(有效期为 3600 秒) - return $this->ossClient->signUrl($this->bucket, $objectKey, $expireTime); + try { + // 生成 OSS 私有 URL(有效期为 3600 秒) + $url = $this->ossClient->signUrl($this->bucket, $objectKey, $expireTime); + // 记录调试信息 + error_log("OSS URL Generation Debug:"); + error_log("Bucket: " . $this->bucket); + error_log("ObjectKey: " . $objectKey); + error_log("ExpireTime: " . $expireTime); + error_log("Generated URL: " . $url); + return $url; + } catch (OssException $e) { + error_log("OSS Error: " . $e->getMessage()); + throw new \RuntimeException('OSS Error: ' . $e->getMessage()); + } } } \ No newline at end of file