BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / www-technology / #17449同步于 2012/9/9
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖

再发一个问问。。。

yy2651592
2012/9/9镜像同步6 回复
主要问题是,我的网页上的视频无法显示。有点长,麻烦各位大神了 我使用的是linux下的apache_arm。应该和pc上的apache是一样的,通过httpd.conf来配置。 本系统由一个带摄像头的ARM板作为服务器,通过wifi连接无线路由,设置其内网ip为192.168.1.120不变。由Apache来作为服务器软件,用无线路由的端口映射功能来实现从公网对ARM板的访问,即设置80和8080端口的所有访问均转送给192.168.1.120 经过测试方案是基本可行的。 网页内容是由apache的htdocs文件夹下的index.php来作为主要页面(就是从pc端浏览器直接输入ip所访问到的页面),该页面中用javascript调用了一个名为stream.html的网页文件来显示摄像头所录制的视频:(相关代码如下) <script type="text/javascript"> url = new Array(); url[1] = "/www/stream.html"; url[2] = "/temperature.php"; window.setInterval(function(){document.getElementById("ifr2").src=url[2]; },1000) document.getElementById("ifr1").src=url[1]; </script> 由于软件的结构问题,stream.html与index.php不在同一文件夹下,所以在apache的httpd.conf中已经对/www/做了别名设置,以此来完成对非默认文件夹下网页文件的访问: Alias /www/ "/home/mjpg-streamer/www/" 目前问题在于,如此操作后,可以访问到ARM板,出现index.php,并且stream.html中的文字内容(如标题之类)也正常显示。唯独视频没有显示,而是出现了一个“破碎的图片”的标志。视频不是数据流的方式,是通过不断刷新获取到的图片来得到的,在stream.html中的<script type="text/javascript">里写的 function createImageLayer() function imageOnload() function imageOnclick() 整个系统在功能上应该是没有问题的,因为本来是在局域网内访问,index.php中相关网页代码为: url[1] = http://192.168.1.120:8080/stream.html; 这样在局域网内是可以访问的,当然从公网上无法访问。 还有一种比较蠢的方法,就是把url改成 url[1] = http://10.105.xxx.xxx:8080/stream.html; 其中10.105.xxx.xxx为在pc端浏览器所输入的ip地址,这样做是可以正常显示的,但由于没有固定ip,所以把这个ip写在index.php中就显得比较不可取。但由此可以证明系统在其他功能方面是没有问题的。 基于上述原因,考虑从本地调用网页文件stream.html更为合理,于是改了apache的相关配置,然后出现一开始所说的问题,请给小弟指点一下啊。
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
yy2651592机器人#1 · 2012/9/10
肿么没有人啊。。。。。。。。。。
binux机器人#2 · 2012/9/10
stream.html的端口和index.php的端口是不一样的?!
yy2651592机器人#3 · 2012/9/10
【 在 binux 的大作中提到: 】 : stream.html的端口和index.php的端口是不一样的?! 是不一样吧,index.php是80吧。stream.html是8080吧
yy2651592机器人#4 · 2012/9/10
【 在 binux 的大作中提到: 】 : stream.html的端口和index.php的端口是不一样的?! 端口不一样会有区别吗,两个端口都在路由器里做了映射 不太清楚这个端口具体有什么意义。。。 mjpg-streamer(给stream.html提供视频数据的软件)配置使用的是8080端口
binux机器人#5 · 2012/9/10
当然有区别了 【 在 yy2651592 的大作中提到: 】 : 端口不一样会有区别吗,两个端口都在路由器里做了映射 : 不太清楚这个端口具体有什么意义。。。 : mjpg-streamer(给stream.html提供视频数据的软件)配置使用的是8080端口
yy2651592机器人#6 · 2012/9/11
【 在 binux 的大作中提到: 】 : 当然有区别了 我知道了,stream.html中的视频内容是已经由mjpg-streamer发布到8080端口上了,所以从80端口访问不到。我注册了个3322的动态域名搞好了: url[1] = "http://buptyangyang.3322.org:8080/stream.html"; 这个样子。。。