项目采用Tp-admin框架进行开发,在对接阿里云OSS的时候报了一个错误“RequestId: xxxxxx”并提示报错位置在阿里云OSS sdk的result.php文件中。于是将ResquestId报给了阿里的技术,技术反馈是AK无效。
但实际上系统配置的AK在其他地方也在使用,应该不是AK的错误。经过排查还真是!Tp-admin框架开发于2016年,过去阿里云的AK位数只有16位,因此我在input标签上添加了字符串长度限制。现在最新的阿里云AK长度为24位,调整后上传文件到OSS没有问题了。
问题二:阿里OSS跨域问题
在过去的项目中我一般会给OSS配置static的域名,在过去也并无任何问题。今天在项目中忽然发现从www访问static的OSS资源竟然提示了跨域问题。
阿里真的是越来越安全了。在OSS上设置跨域规则。
来源位置需要写完整的来源,如:https://www.zkii.net或https://*.zkii.net
请求类型有什么就勾选什么。允许Headers位置不知道的就设置“*”,有header的就设置自己的header。其他地方不用设置,保存即可。