OSS 咨询

本文涉及的产品
对象存储 OSS,20GB 3个月
.cn 域名,1个 12个月
对象存储 OSS,恶意文件检测 1000次 1年
简介: CDN + OSS 模式,OSS 地址被暴露后如何处理 用户可以将 OSS 设置为私有,在阿里云 CDN 上设置私有回原,然后在 CDN 上针对不想让人访问的 OSS 资源 prefix 做正则匹配,拒绝请求。或者在 CDN 上设置鉴权,拒绝没有授权的访问。

浅谈

本章介绍一些基本的 oss 的咨询内容,问题是一直在补充的,不定期的进行更新;

问:cdn 结合 oss,oss 地址被暴露后如何处理

答:

  • 暴露后无法组织别人访问你,先将 bucket private 设置为私有禁止读写。
  • 在阿里 cdn 上开启私有回源 oss 功能,让所有请求只能通过 cdn 回源。
  • cdn 上开启鉴权,所有访问必须携带授权的合法秘钥。

问:跨国访问超过 1s 优化建议?

答:

  • 在国外北美或者亚太 region 新建一个海外的 bucket 。
  • 如果方便的情况下,可以购买一台和 bucket 同 region 的 ECS 走内网上传,也会提升性能。
  • bucket 初始化的代码把 crc64 关掉,也可以优化上传的性能。
  1. = oss2.Bucket(auth, 'endpoint', 'bucket',enable_crc=False)

问:oss bucket 怎么提高数量?

答:

  • oss bucket 默认是 30 个,合理的利用 bucket preifx 和 RAM 策略可以给每一个用户配置一个单独的 prefix 即可,这样一劳永逸。
  • 如果特殊业务需求提供工单到阿里云再分析处理。

问:ossutil64 有限速功能吗?

答:

  • 可以通过两个参数控制下多文件的上传并发 -jobs -parallel
  • 限速功能是一个后期规划。

问:访问 OSS 比较慢有什么优化建议?

答:

  • 使用内网地址访问 OSS
  • CDN + OSS 的模式服务
  • 大文件使用断点上传、下载(既能分片还能断点)

问:文件被删除怎么查

答:最好先开通 oss log 功能后自己查询,如果之前没有开启 log ,很难查到,可以尝试提交工单找到阿里云进行处理。

问:文件进行压缩的条件

答:

  • Conetnt-Type 必须是以下几种之一:
    “text/cache-manifest” “text/xml” “text/plain” “text/css” “application/javascript” “application/x-javascript” “application/rss+xml”
  • 客户端发起的请求中必须要含有 "content-Encoding:gzip" 头才可以。

问:事件通知不生效

  • 如果是控制台上传必须要配置 postobject 通知类型,最好配置全部类型的事件通知,一劳永逸。
  • 确认是否上传成功,标准是 oss 返回的上传状态码是 200 ,并且 response header 中必须有 requestID。
  • 确认 oss 设置的 mns 通知队列或者 topic 是否正常,有没有写错,是否可以正常收到消息。
  • 客户端的通知地址网络、应用是否正常。
  • 设置的触发 prefix 是否正确。

问:You have no right to access this object because of bucket acl

答:

  • OSS 私有的,用户没权限访问。
  • 用户访问的文件是归档的没有解冻。
  • OSS 私有的,用户访问携带的鉴权信息不对。
  • 用户请求 OSS 是用子账号请求,子账号的策略不够。

问:浏览器播放视频有声音没视频,本地播放正常

答:
如果是本地播放起可以播放可以证明 oss 的文件没问题,就是浏览器兼容问题,可以通过这个工具检测一下 tool

问:InvalidPolicyDocument

答:用户的请求中出现一个非法操作参数 “Content-type” 请检查用户是否在策略中配置了。

问:本地计算的 MD5 源文件和 Content-MD5 一致 但是报 InvalidDigest

5
答:

  • OSS 的接收到的 MD5 value 值必须是大写的
  • OSS md5 要求是 128bit 的值然后经过 base64 编码得到 24 位。
  • Content-MD5 要大写。

问:Header 签名中如何添加过期时间

答:OSS Header 签名的方式不支持定义过期时间。

问:Android-SDK 目前支持 Android9.0 ?

答:支持

问:OSS 生命周期生效时间

答:执行时间为不大于用户设置过期 Days + 2天 ,举例 ,当前上传了一个 文件 ,last-modify 是 11 19 号,12:00,保留时间 30 天 执行计划任务的时间就是,11 19 12:00 + 30 天 + 2天 = 12 21 号会执行删除(不超过这个时间点)

问:批量删除 OSS 的文件

答:

  • 第一种,如果文件在不同的 prefix 下,prefix 彼此同级,可以多次调用 ossutil 去删除。
  • 第二种,通过 SDK 删除,在程序中通过 thread 多线程调用 delete ,传入不通的 prefix 删除,可以参考。 删除

问:存在 OSS 的视频文件通过浏览器不能播放

答:

  • 先把文件下载本地看是否能播放,本地可以播放,放到浏览器不行那就说明视频的编码可能出现问题浏览器不能解码导致。
  • 可以用 ffprobe 或者 ffplay 播放一起看看有什么异常信息,如下视频出现 TNS 错误,浏览器无法解码播放。
    1

问:The bucket you are attempting to access must be addressed using the specified endpoint.Please send all future requests to this endpoint.

答:

  • 访问 CDN 的账号和 bucket 不是一个。
  • 客户访问的 bucket 和 endpoint 写错。
  • 客户通过域名访问,域名没有和 OSS 绑定。
  • OSS 通过 CDN 访问,回原到 OSS 没有加 host 头信息。

问:访问 OSS 发生 301 跳转

答:

  • 先直接固定 OSS 访问,使用 https 测试,如果发生了 301 ,再继续检查下自己的回原设置,如果设置匹配前缀后者其他目录规则的,就触发了 301 跳转,属于正常现象
  • 如果客户没有设置 301 ,可以直接切成 https ,然后抓包看下是否被劫持了。

问:OSS 上传后没有回调没通知

答:

  • 事件通知 10 分钟后才能生效;
  • 控制台上传要配置 postobject 回调;
  • 确认文件是否上传成功,只有返回 http.status==200 && requestID !=None 才算成功,其他并不保证是准确的判断;
  • 如果以上都已经确认正常,那就是 mns 没有将消息发出去;

问:为什么 oss 的资源会自动加上 Content-Disposition

答:

  • 由于网络安全的管理要求,所有存在 oss 的资源不能直接作为网页直接展示,必须要加上 Content-Disposition: attachment; filename={filename}
  • 只有在 oss 绑定了自己备案的域名后才能在线展示出来。
    绑定好域名后,oss 会自动将 Content-Disposition 去掉,不用手动操作。

问:阿里云oss browser上传文件如何跳过已经存在的。

答: 不支持

问:nginx proxy 到 OSS 异常

答:类似问题请检查下 OSS 控制台上,域名绑定是否已经关联了用户的域名,如果没有请绑定域名,否则访问会出现异常,或者用户将回源的 host 改为 OSS 的访问域名也可。

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
2月前
|
分布式计算 大数据 MaxCompute
MaxCompute产品使用合集之使用pyodps读取OSS(阿里云对象存储)中的文件的步骤是什么
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
9天前
|
消息中间件 分布式计算 DataWorks
DataWorks产品使用合集之如何使用Python和阿里云SDK读取OSS中的文件
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
8天前
|
存储 运维 安全
阿里云OSS的优势
【7月更文挑战第19天】阿里云OSS的优势
25 2
|
8天前
|
存储 API 开发工具
阿里云OSS
【7月更文挑战第19天】阿里云OSS
33 1
|
21天前
|
存储 弹性计算 对象存储
预留空间是什么?阿里云OSS对象存储预留空间说明
阿里云OSS预留空间是预付费存储产品,提供折扣价以锁定特定容量,适用于抵扣有地域属性的Bucket标准存储费用及ECS快照费。通过购买预留空间,如500GB通用预留+100GB标准-本地冗余存储包,用户可优化成本。
|
1月前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何将CSV文件从阿里云OSS同步到ODPS表,并且使用列作为表分区
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
DataWorks产品使用合集之如何将CSV文件从阿里云OSS同步到ODPS表,并且使用列作为表分区
|
29天前
|
监控 Serverless 持续交付
阿里云云效产品使用问题之如何让流水线支持构建 flutter web 应用到 OSS
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
27天前
|
存储 Java Maven
大事件后端项目31--------文件上传_阿里云OSS_入门程序
大事件后端项目31--------文件上传_阿里云OSS_入门程序
|
27天前
|
存储 运维 Java
大事件后端项目30------文件上传_阿里云OSS_准备工作
大事件后端项目30------文件上传_阿里云OSS_准备工作
|
9天前
|
持续交付 开发工具 对象存储
阿里云云效产品使用合集之构建物如何上传到阿里云OSS
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。