繁体   English   中英

使用PostgreSQL随附的Apache / PHP服务器向iOS设备提供视频

[英]Serving video to iOS devices using the Apache/PHP server included with PostgreSQL

我正在开发一个系统,其中服务器将向设备(iDevice或其他设备)提供视频,然后要求用户对视频进行评分。 我决定将PostgreSQL用于我的数据库,并让它安装一个Apache和PHP服务器来进行工作(如http://www.enterprisedb.com/products-services-training/pgdownload所示 )。

但是,似乎该服务器的配置与典型的Apache / PHP安装不同。 当iDevice尝试从服务器下载视频时,iDevice会出现以下错误:

无法播放电影-服务器配置不正确

我进行了一些研究,发现iDevices需要字节范围请求功能,因此我检查了服务器的访问日志并发现了以下内容:

xx.xx.xx.xx--[08 / Mar / 2011:11:45:56 -0700]“ GET temp.mp4 HTTP / 1.1” 206 2
xx.xx.xx.xx--[08 / Mar / 2011:11:45:56 -0700]“ GET temp.mp4 HTTP / 1.1” 200 17760579

(其中“ 17760579”是特定文件的确切大小,以字节为单位)
他们应该看起来像这样:

xx.xx.xx.xx--[07 / Mar / 2011:18:04:11 -0700]“ GET temp.mp4 HTTP / 1.1” 206 2
xx.xx.xx.xx--[07 / Mar / 2011:18:04:11 -0700]“ GET temp.mp4 HTTP / 1.1” 206 25947357
xx.xx.xx.xx--[07 / Mar / 2011:18:04:11 -0700]“ GET temp.mp4 HTTP / 1.1” 206 60637
xx.xx.xx.xx--[07 / Mar / 2011:18:04:11 -0700]“ GET temp.mp4 HTTP / 1.1” 206 25880928

因此,我知道我的服务器无法正确处理某些字节范围的请求。 但是,使用curl检查此功能可返回正确的结果:

curl --range 0-99 http://url/temp.mp4 -o /dev/null
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                               Dload  Upload   Total   Spent    Left  Speed
  0   100    0   100    0     0   8574      0 --:--:-- --:--:-- --:--:-- 10000

我确保正确配置了视频MIME类型。

我不确定从这里去哪里。 该服务器中某处某处配置错误。

更新:这是适当的版本号:

服务器版本:Apache / 2.2.16(Unix)
建立服务器:2010年10月7日00:26:09
PHP版本5.3.3
x86_64-apple-darwin上的PostgreSQL 9.0.2

Apache需要安装并启用mod_h264才能正确处理带有字节范围请求的mp4。 您是否检查过此mod?

iOS设备使用名为“ HTTP Live Streaming”的流服务,该服务是在Apple发布Quicktime Streaming Server(QSS)时开发的。

除非将您的服务器配置为进行实时流传输,否则您的视频将仅下载然后播放。 不能按需播放。

另一个选择是RTSP流式传输,但是我不确定评级系统如何在所有这些方面发挥作用。 这听起来像是iPhone / iOS应用程序的工作。

我不知道如何解决此问题。 我最初在问题评论中使用了在该站点上找到的PostgreSQL / Apache / PHP安装软件包,因为这是一种安装这三个软件包并确保它们正常工作的一种方法。 显然,由于最终的服务器未提供我所需的功能,因此我可以选择从头开始安装所有内容。 我使用此处找到的说明来实现此结果。 这些说明有些过时了,但是该过程有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM