You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel集成Oracle对象存储(OCI)遇SSL证书匹配错误求助

解决Laravel集成Oracle对象存储时的SSL证书匹配错误

错误原因

你遇到的SSL证书不匹配问题,是因为当前配置使用了虚拟主机样式的请求(将bucket名称作为域名前缀,如my-oracle-bucket.a****jkp17v.compat.objectstorage.ap-hyderabad-1.oraclecloud.com),但Oracle OCI兼容S3接口的SSL证书仅覆盖compat.objectstorage.{region}.oraclecloud.com这类根域名,不包含自定义bucket子域名,因此触发了证书验证失败。

解决方案

修改config/filesystems.php中的OCI存储配置,添加use_path_style_endpoint参数强制使用路径样式请求(bucket名称放在URL路径中而非域名前缀),具体步骤如下:

  1. 更新config/filesystems.php里的oci配置数组:
'oci' => [
    'driver' => 's3',
    'key' => env('OCI_ACCESS_KEY_ID'),
    'secret' => env('OCI_SECRET_ACCESS_KEY'),
    'region' => env('OCI_DEFAULT_REGION'),
    'bucket' => env('OCI_BUCKET'),
    'url' => env('OCI_URL'),
    'use_path_style_endpoint' => true, // 新增此配置项
]
  1. 确保.env中的OCI_URL配置正确(无需拼接bucket名称):
OCI_URL="https://a***8ejkp17v.compat.objectstorage.ap-hyderabad-1.oraclecloud.com"

生效原理

启用use_path_style_endpoint后,文件上传的请求URL会变为:
https://a***8ejkp17v.compat.objectstorage.ap-hyderabad-1.oraclecloud.com/my-oracle-bucket/20230325143057WrmOc.jpg
该域名完全匹配OCI官方SSL证书的覆盖范围,因此SSL验证会顺利通过。

内容的提问来源于stack exchange,提问作者user6085744

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 17:17:15