This commit is contained in:
2025-04-30 15:06:32 +08:00
parent ced6fa85f2
commit 5dc9e63b03
3 changed files with 32 additions and 22 deletions
+13 -3
View File
@@ -65,17 +65,27 @@ class OssService
public function generatePrivateUrl($objectKey, $expireTime = 3600)
{
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("Current Time: " . time());
error_log("Expiration Time: " . (time() + $expireTime));
error_log("AccessKeyId: " . substr($this->accessKeyId, 0, 4) . "****");
error_log("Endpoint: " . $this->endpoint);
// 生成 OSS 私有 URL
$url = $this->ossClient->signUrl($this->bucket, $objectKey, $expireTime);
// 记录生成的 URL
error_log("Generated URL: " . $url);
return $url;
} catch (OssException $e) {
error_log("OSS Error: " . $e->getMessage());
error_log("Error Code: " . $e->getCode());
error_log("Error Trace: " . $e->getTraceAsString());
throw new \RuntimeException('OSS Error: ' . $e->getMessage());
}
}
+12 -16
View File
@@ -64,25 +64,21 @@ return [
],
'oss' => [
'driver' => \Shopwwi\WebmanFilesystem\Adapter\AliyunOssAdapterFactory::class,
// 'accessId' => 'OSS_ACCESS_ID',
// 'accessSecret' => 'OSS_ACCESS_SECRET',
// 'bucket' => 'OSS_BUCKET',
// 'endpoint' => 'OSS_ENDPOINT',
// 'url' => '', // 静态文件访问域名
'accessId' => 'LTAI5tAGiH7bkVkmrniXnfkA',
'accessSecret' => 'nqklJBft6t3S0A4ZvxF4ci9ni91kmm',
'accessKey' => 'LTAI5tAGiH7bkVkmrniXnfkA',
'secretKey' => 'nqklJBft6t3S0A4ZvxF4ci9ni91kmm',
'bucket' => 'vehicle-album',
'endpoint' => 'https://oss-cn-beijing.aliyuncs.com',
'accessId' => env('OSS_ACCESS_KEY_ID'),
'accessSecret' => env('OSS_ACCESS_KEY_SECRET'),
'accessKey' => env('OSS_ACCESS_KEY_ID'),
'secretKey' => env('OSS_ACCESS_KEY_SECRET'),
'bucket' => env('OSS_BUCKET', 'vehicle-album'),
'endpoint' => env('OSS_ENDPOINT', 'https://oss-cn-beijing.aliyuncs.com'),
'url' => '', // 静态文件访问域名
// 'timeout' => 3600,
// 'connectTimeout' => 10,
'isCName' => false,
'prefix' => '',
// 'token' => null,
// 'proxy' => null,
'timeout' => 60,
'connectTimeout' => 10,
'securityToken' => null,
'proxy' => null,
'useSSL' => true,
'signatureVersion' => 'v4',
],
'qiniu' => [
'driver' => \Shopwwi\WebmanFilesystem\Adapter\QiniuAdapterFactory::class,
@@ -139,16 +139,20 @@ class VehicleController extends Crud
if(!str_starts_with($item['img_url'], 'http')){
try {
$ossservice = new OssService();
$img_url = $ossservice->generatePrivateUrl($item['img_url'], 3600);
// 使用更短的过期时间(5分钟)
$img_url = $ossservice->generatePrivateUrl($item['img_url'], 300);
Log::info("Vehicle image URL generation:", [
'original_url' => $item['img_url'],
'generated_url' => $img_url
'generated_url' => $img_url,
'current_time' => time()
]);
$item['img_url'] = $img_url;
} catch (\Exception $e) {
Log::error("Vehicle image URL generation failed:", [
'error' => $e->getMessage(),
'original_url' => $item['img_url']
'original_url' => $item['img_url'],
'error_code' => $e->getCode(),
'trace' => $e->getTraceAsString()
]);
}
}