试图加载大型视频,但得到'503服务不可用'。

问题描述 投票:0回答:1

我在加载一个大视频到浏览器时遇到了问题。我有一个 video.php 文件,从而创建一个 $token 中指定的产品进行访问。$_GET['product'] 然后 video.js 请求访问视频文件。

<video id="viewer"
class="video-js vjs-default-skin vjs-big-play-centered"
data-setup='{ "controls": true, "autoplay": false, "preload": "metadata" }'
height="500" width="1000" disablePictureInPicture controls="disabled">
  <source src="videostream?type=m3u8&path=<?php echo $token; ?>/prog_index.m3u8" type="application/x-mpegURL">
</video>

然后,服务器应该返回视频的分块。视频是这样存储的。

private
- products
-- 1
--- prog_index.m3u8
--- fileSequence0.ts
--- fileSequence1.ts
--- fileSequence2.ts
--- and so on...

它复制文件夹到 tmp 与文件夹的名称是token。假设这个token是 1234123412341234:

private
- tmp
-- 1234123412341234
--- prog_index.m3u8
--- fileSequence0.ts
--- fileSequence1.ts
--- fileSequence2.ts
--- and so on...

而且文件在加载时被删除。

当我试图访问 mysite.com/video.php?product=1,我得到503服务不可用。

视频文件的总大小约为1-2GB大,我使用的是GoDaddy主机。

谢谢!我有一个大的视频加载到浏览器的问题,我的视频文件的总大小约1-2GB大,我使用GoDaddy主机。

javascript php video-streaming video.js http-status-code-503
1个回答
3
投票

为什么你得到一个503错误?

GoDaddy主机抛出了一个 503 ERROR 如果其中之一。

a) 您的网站达到了最大并发连接限制或

b) 如果您的主机账户用尽了所有可用资源(这里可能是这样,因为您提到必须加载超过1 GB的大型视频文件。

决议

根据您的主机账户类型,解决方案如下。

Linux主机(cPanel)。 结束你的Linux主机账户的PHP进程(更多信息请点击这里)。此处)

Windows主机(Plesk)。 试用 回收您的应用程序池

虚拟主机(Linux)。 进程结束时使用 管理我的Web & Classic主机账户的系统进程(Linux)

虚拟主机(Windows)。 试用 回收您的应用程序池(windows)

另一个可能的问题

如果你使用WordPress 随着你的网站,你的一个插件可能会导致这个问题。尝试禁用和启用所有的插件,并一次启用一个,看看是否是它们造成的问题。

故障排除和预防。

确保你有足够的硬盘空间,每当你加载大型视频,所以你不会得到的 503 ERROR!

希望这对你有帮助,希望这能解决你的问题。

注意:你的错误日志中没有任何显示,因为本质上没有真正的错误。你可以在上面的解决方案中看到,代码没有出错。


1
投票

我发现是我的PHP超时了。我的 php.ini 文件有一个 max_execution_time600 5分钟),所以当我改变了 max_execution_time-1它解决了这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.