【问题标题】:HTML5 Video not playing in IE11 or EdgeHTML5 视频无法在 IE11 或 Edge 中播放
【发布时间】:2019-09-29 09:21:10
【问题描述】:

在过去的几天里,我已经处理了许多似乎涵盖此问题的 Stack Overflow 问题,但我找不到适合我的解决方案,所以希望这不是一个重复的问题。

我有一个这样编码的 MP4 文件:

我也使用 Miro Video Converter 转换为 webm。

我已经使用直接的视频标签将其输入到我的网页中,如下所示:

<video controls autoplay muted loop>
<source src="video.mp4" type="video/mp4">
<source src="video.webm" type="video/webm">
</video>

这可以在网上看到: https://www.kristyellispersonaltraining.co.uk/videotest.htm

它在 Chrome、Firefox 和手机上运行良好。但是,一旦我尝试在 Microsoft 浏览器中查看它,我就无法让它工作。 IE11 和 Edge 都显示错误。

我已经对文件重新编码了好几次,据我所知,我已经把它放在了它应该是的确切编解码器中。

开发工具显示此错误:

HTTP502: BAD GATEWAY - 服务器在充当网关或代理时,在尝试满足请求时从它访问的上游服务器接收到无效响应。

谁能解释一下这里可能发生了什么?

【问题讨论】:

标签: video-streaming html5-video internet-explorer-11 microsoft-edge


【解决方案1】:

如果视频请求显示该错误,则绝对与您对视频的编码方式或任何客户端无关。您需要通过检查服务器端日志来找出服务器端的问题。

【讨论】:

  • 即使它只发生在 IE 和 Edge 中,并且在所有其他浏览器中都能正常显示?
  • @VampiricMonkey 强调,是的!如果浏览器甚至没有要尝试解码的视频,它怎么可能与它有任何关系呢?您可能有一些损坏的服务器端试图检测浏览器。或者 IE 正在获取不同的视频源,而您的服务器没有处理它。
  • 有什么想法吗? IIS 在日志中绝对没有给我们任何有用的东西。我的 mime 类型在我的 web.config 中设置正确。我没有在任何一方放入任何浏览器检测。我只是不知道我应该寻找什么?
  • @VampiricMonkey 根据您的服务器,Nginx 是您的服务器。我假设你在 IIS 前面有 Nginx?在我看来,IIS 没有正确处理范围请求。如果您从https://www.kristyellispersonaltraining.co.uk/video.mp4 的请求中删除Range 标头,它会起作用。
  • 是的,它是 IIS 前面的 Nginx。但看起来我们必须先安装 IIS 插件才能获得 Range 标头的选项,所以我们只需要解决它,直到我们下次重新启动。无论如何感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 2021-12-17
  • 2014-04-06
  • 2018-06-27
  • 2013-03-17
  • 2012-01-25
  • 2011-10-10
  • 2016-12-17
相关资源
最近更新 更多