[asp]-flash播放器不能加载视频文件
播放器和视频文件都是放在www/video/目录(虚拟空间)下的,index.asp放在www目录下
index.asp中相关部分的代码如下:
<div>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="290" height="211">
<param name="movie" value="/video/Flvplayer.swf" />
<param name="quality" value="high" />
<param name="allowFullScreen" value="true" />
<param name="FlashVars" value="vcastr_file=../video/1.flv&BufferTime=3" />
</object>
</div>
在127.0.0.1上是正常的,发到虚拟空间后,播放器还是能加载的,但是不能播放,
请问是不是FlashVars的路径弄错了呢? 高手帮我改一下哈,谢谢!
------解决方案--------------------很有可能是 路径错了,呵呵
自己 多改几次看看
------解决方案--------------------这里标红的错了:
<param name="FlashVars" value="vcastr_file=../video/1.flv&BufferTime=3" />
改成:
<param name="FlashVars" value="vcastr_file=/video/1.flv&BufferTime=3" />
或者<param name="FlashVars" value="vcastr_file='video/1.flv&BufferTime=3'" />
------解决方案--------------------FlashVars 实际上就是参数 a=b&c=d 这个格式
你可以直接用 video/Flvplayer.swf?vcastr_file=../video/1.flv&BufferTime=3
打开测试下看看.
ps: vcastr_file=/video/1.flv 或 vcastr_file=1.flv
------解决方案--------------------虚拟空间 ../video/1.flv 这个文件是否存在呢
------解决方案--------------------没错,我就是说你在虚拟空间上不能这么写:../video
因为你当前在WWW,你这样写,难道还能让你访问虚拟空间上非你所控制的目录吗??这是安全机制绝对不允许的.
最早期的一些黑客就是利用这个BUG,../.../.../一直能访问所有目录.但这个BUG早早就被发现并禁止了.
而且,你这么用,路径也不对,如果是可以访问的话,你这样写,调用的媒体文件是和WWW同级的video目录,而不是WWW下的video目录.
加引号的形式,对于你这个情况的确是不对的.不用引号就是.
既然<param name="FlashVars" value="vcastr_file=/video/1.flv&BufferTime=3" />也不行,
那就是这个了:<param name="FlashVars" value="vcastr_file=1.flv&BufferTime=3" />
把../video/都去掉.或者:
<param name="FlashVars" value="./vcastr_file=1.flv&BufferTime=3" />
------解决方案--------------------
------解决方案--------------------你在空间上的index.asp文件右键下看看文件路径
还有 那个空间是否允许你播放这个文件
------解决方案--------------------不能用fla文件,要用swf文件才可以。
------解决方案--------------------<param name="FlashVars" value="vcastr_file=../video/1.flv&BufferTime=3" />
看清楚了啊,你要播放的是1.flv
那么首先要看你的虚拟空间的MIME里是否有支持flv文件的,如果没有那么是不能播放的
你本地能播放是因为你本地已经设置了flv的MIME类型
------解决方案--------------------