【发布时间】:2020-08-07 12:19:36
【问题描述】:
我在将大视频加载到浏览器时遇到问题。我有一个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,文件夹的名称是令牌。假设令牌是1234123412341234:
private
- tmp
-- 1234123412341234
--- prog_index.m3u8
--- fileSequence0.ts
--- fileSequence1.ts
--- fileSequence2.ts
--- and so on...
文件在加载时会被删除。
当我尝试访问 mysite.com/video.php?product=1 时,我得到 503 Service Unavailable。
视频文件的总大小约为 1-2GB,我使用的是 GoDaddy 托管。
谢谢!
【问题讨论】:
-
你在错误日志中得到了什么?
-
@MelvynMarigny 错误日志中没有任何内容。
-
503 错误总是出现在错误日志中,除非明确禁止。访问日志中有什么内容?
-
@ximaera 总是出现在错误日志中的是错误 500s,而不是 503s。
-
您使用的是共享主机吗?如果是,共享主机将不允许您上传大/巨大的文件或使用高 CPU/内存消耗。如果您收到 503 错误,则表示您的应用程序池已停止工作,这表明您的托管服务提供商限制了您的应用程序池
标签: javascript php video-streaming video.js http-status-code-503