Apache 字节范围和音频文件

Posted

技术标签:

【中文标题】Apache 字节范围和音频文件【英文标题】:Apache Byte Range and Audio File 【发布时间】:2013-02-16 05:22:39 【问题描述】:

我们服务器上的 Apache 配置为阻止字节范围 (CVE 2011-3192)。但是它使我们服务器上的音频不能播放,因为较新版本的 Safari 和 Chrome 以字节请求它们,但服务器会发送整个内容。

任何指针表示赞赏。

【问题讨论】:

【参考方案1】:

您可以尝试将 apache 设置为仅在发出过多请求时才阻止 Range 标头,而不是完全阻止 Range 标头。来自Apache Wiki:

使用 SetEnvIf 或 mod_rewrite 检测大量范围,然后 要么忽略 Range: 标头,要么拒绝请求。

选项 1:(Apache 2.2,需要 mod_setenvif 和 mod_headers)

      # Drop the Range header when more than 5 ranges.
      # CVE-2011-3192
      SetEnvIf Range (?:,.*?)5,5 bad-range=1
      RequestHeader unset Range env=bad-range

      # We always drop Request-Range; as this is a legacy
      # dating back to MSIE3 and Netscape 2 and 3.
      #
      RequestHeader unset Request-Range

      # optional logging.
      CustomLog logs/range-CVE-2011-3192.log common env=bad-range

数字 5 是任意的。几个 10 应该不是问题,可能是 例如向非常高端的电子阅读器提供 PDF 的网站需要 或使用复杂的基于 http 的视频流。

【讨论】:

以上是关于Apache 字节范围和音频文件的主要内容,如果未能解决你的问题,请参考以下文章

libfdk_aac音频采样率和编码字节数注意

使用 AUHAL 音频单元将字节写入音频文件

从音频字节创建 wav 文件

在matlab中将音频文件转换为字节数组

有没有办法在android studio中将音频文件转换为字节数组

按块加载视频/音频 html