无法在iOS上加载资源,插件处理负载

Cod*_*123 13 html apache ios

每当我尝试在我的服务器上查看视频文件时,我在Safari,Chrome中的iOS上都会出现此错误.

我使用的是blob服务器,然后是Apache服务器,所以我不确定问题是什么.但是,当我只使用Apache时,我确实得到了这个错误但是我也有了视频渲染.

但是,当我使用我的服务器渲染它时,这是行不通的.有人知道为什么吗?这些视频在其他设备上运行良好,如果只通过Apache访问,浏览器也能正常工作.

Cod*_*123 20

解决这个问题的方法只是一个解决方法.原因是blob服务器不是流服务器.iOS设备希望视频以小块的形式到达.例如,流媒体服务器能够做到这一点.但是,blob服务器只是将视频作为blob传递,这不是iOS设备所期望的.有些浏览器足够聪明,可以处理这个,但其他浏

我解决这个问题的方法是将blob服务器外部的视频文件添加到项目中的文件夹中,然后通过Apache服务器呈现它,而不是通过我们使用的实际blob服务器提供它.我希望这有帮助.

  • 您能详细解释一下解决方案吗?我正在使用 WordPress,那么我应该在哪里保存视频才能使其正常工作? (3认同)
  • 如何以小块的形式提供视频,PHP 代码是什么? (3认同)

My *_*eth 6

我们在这里遇到了类似的错误。我认为这可能是流媒体问题,因为我们的视频托管在 Azure 上的 blob 存储中。设置流媒体服务后,视频仍然无法播放。事实证明,我们的错误的原因是使用 Service Worker 的 Safari。以下是对我们发现的进一步解释:

Safari 首先为 Video 标签发送一个字节范围请求,期望得到 206 响应。但是,如果您使用 Service Worker,则响应返回 200,并且 Safari 似乎不知道如何处理此问题。我们的解决方案是排除在 Safari 中使用 Service Worker。

我们通过在 Macbook 上使用 Safari 调试器的网络选项卡解决我们在 iPad 上看到的问题发现了这一点。附上截图供比较/参考。左侧选项卡显示默认情况下调用的外观。右侧选项卡显示了使用 Service Worker 时您会看到的内容。

Safari 网络标签服务工作者


Cel*_*lso 5

对于某些 mp4 视频,我也收到此错误。原来这对我来说不是服务器问题,而是视频编码问题。

问题

需要在视频文件的前面放置一个“moov atom”。它用作视频的目录。对于 html 流媒体,必须首先读取“moov atom”,否则它不会在某些设备上播放。

修复

为了解决这个问题,我使用了手刹来转码我的视频。打开“网络优化”同时打开零延迟和“快速解码”可能会有所帮助(在视频选项卡中找到)。


Ali*_*aza 5

将以下代码行添加到 .htaccess (位于 WordPress 安装的根目录中):

SetEnvIfNoCase Request_URI .(?:mp4)$ no-gzip dont-vary
Run Code Online (Sandbox Code Playgroud)

下面的截图是新的完整的.htaccess

在此输入图像描述