IIS 架设 WebPlayer9 P2P视频点播服务器教程
服务器端自动包教程: 自动安装指导手册
5步架设好你的WebPlayer9视频点播服务器
Step 1 下载ISAPI动态库
Step 2 配置ISAPI 运行权限
Step 3 启用ISAPI 缓存(必须)
Step 4 添加web服务扩展
Step 5 检查ISAPI运行状态

以下步骤可选:

Step 6 防止盗链
Step 7 防止盗播
Step 8 设置WebPlayer9服务器端访问密码
Step 9 WebPlayer9后台管理系统
Step 10 如何支持多源播放
下载ISAPI动态库

从本站下载WebPlayer9 服务器端到需要部署的服务器。

解压后,将其中的 "webmedia"目录复制到需要部署的网站的根目录。

配置ISAPI 运行权限

配置webmedia目录的权限::

  • 在 IIS 管理器中,展开本地计算机,然后单击要配置网站下面的的"webmedia"目录。
  • 右键单击该目录,然后单击“属性”。
  • 单击相应的选项卡:“主目录”、“虚拟目录”或“目录”。
  • 在“应用程序设置”区域中,为“执行权限”选项,选择“脚本和可执行文件”选项。然后单击“应用”使设置生效。
配置ISAPI 运行权限
启用ISAPI 缓存(必须)
  • 在 IIS 管理器中,展开本地计算机,然后单击要配置网站下面的"webmedia"目录。
  • 右键单击该目录,然后单击“属性”。
  • 单击相应的选项卡:“主目录”、“虚拟目录”或“目录”。
  • 在“应用程序设置”区域中,单击“配置”,然后单击“映射”选项卡。
  • 在“映射”选项卡中,选中“缓存 ISAPI 扩展”复选框。
启用ISAPI 缓存
添加web服务扩展
  • 在 IIS 管理器中,展开本地计算机,然后单击“web 服务扩展”。
  • 单击“添加一个新的web服务扩展”。
  • 在扩展名编辑框中输入: WebPlayer9 ISAPI
  • 点击“添加”按钮,选择“网站根目录\webmedia\webmedia.dll”文件。
  • 选中“设置扩展状态为允许”复选框。
  • 点击“确定”按钮,使设置生效。
添加web服务扩展
检查ISAPI运行状态

打开IE, 在地址栏中输入 http://[替换为你的网站地址]/webmedia/webmedia.dll, 然后会出现一个欢迎页面, 显示:“Hello, Welcome to use the Powerful streaming server - webplayer9!”。

检查ISAPI运行状态
防止盗链

默认情况下,IIS是禁止.rmvb/.flv扩展名文件下载的。这正好符合我们的需要。如果网站已经设置了允许此类扩展名下载请从mime类型中删除, 设置为禁止下载, 这样可以有效防止http下载软件盗链资源, 但是禁止下载对于点播没有任何影响。IIS默认是允许wmv/asf文件被下载的,这是我们不需要的,因此如果要禁止此两个扩展名的下载,请参考一下步骤:

  • 打开IIS服务管理器,选择需要设置的站点->属性->主目录选项卡。
  • 点击中下方的“配置”按钮,弹出应用程序配置窗口。
  • 在应用程序映射选项卡中点击下方的“添加”按钮,弹出添加/编辑应用程序扩展名映射窗口。
  • 点击浏览按钮在可执行文件文本框中输入C:\WINNT\system32\inetsrv\ASP.DLL 扩展名文本框中输入.wmv 动作设为:全部动作。
  • 取消对脚本引擎的选择。 完成添加即可。
  • 在iis服务管理器中将该站点重启。IIS当遇到有关于.wmv的请求时将提示拒绝访问的回复!从而完成整个设置操作!

禁止ASF/RM扩展名文件下载的操作,参照以上步骤,设置。

防止盗播

大家可能会疑惑,上面的操作只是禁止了http下载软件,下载自己站上的视频资源。如果其他网站同样使用WebPlayer9播放器,不是就能盗播自己站上的资源了吗?回答是: 是否允许盗播,是否允许那个网站转播,完全取决于你的设置。

WebPlayer9提供完善的防止盗播配置文件(webmedia.xallow)。通过配置该文件,可以设置允许那些网站转播你的资源,通过域名列表的方式来控制转播权限。支持(*)通配符号。

  • 默认情况下,在webmedia.dll所在的webmedia目录中,webmedia.xallow不存在。此时默认,允许所有其他网站转播资源。
  • 创建一个空的webmedia.xallow文件在webmedia.dll所在的webmedia目录中, 此时默认,只有本网站可以播放视频资源。拒绝其他网站转播。
  • 在webmedia.xallow,可以添加域名,每行填写一个域名,来设置允许那个域名可以转播自己的资源。例如: 添加 www.abc.com, 允许www.abc.com域名下的网页内嵌的播放器转播自己网站的视频资源。添加 *.abc.com, 允许abc.com所有的子域名下的网页内嵌的播放器转播自己网站的视频资源。
  • 如果只填写一行,填写一个 * 字符,是什么结果?当然是表示,允许所有网站转播自己的资源了。和webmedia.xallow不存在的情况下,是同样的效果。
设置WebPlayer9服务器端访问密码

WebPlayer9服务器端的默认访问密码为:admin

为了更加安全,可以打开"站点根目录|webmedia| SetPassword.exe" ,修改WebPlayer9服务器端访问密码。

注:修改密码后,需要重启IIS服务才能生效。(控制面板|管理工具|服务,找到IIS Admin,重新启动)

WebPlayer9后台管理系统

在浏览器中输入"你的网址:端口号/webmedia/admin/",如:http://www.webplayer9.com/webmedia/admin/ ,可以登录WebPlayer9后台管理系统,具体使用方法请参看"站点根目录|webmedia| webplayer9后台管理手册.chm"。

如何支持多源播放
  • 1. 设置 URLTokenize=[分割字符], 例如: URLTokenize="@"
  • 2. 设置播放地址 URL=URL1[分割字符]URL2[分割字符]URL3...,
  • 3. 例如: URL=http://xxx1/vod/yase1.rmvb@http://xxx2.com/vod/yase1.rmvb
  • 4. 多源的播放地址地位平等,同时获取数据。某个节点无法链接,不影响其他节点的获取。
  • 5. 在P2P模式下,以第一个播放地址为依据做P2P分发。

classid="clsid:947BA55B-2113-4349-8784-FFB9D7F881C9"

属性名称 属性值 描述
Mode full, simple 控件的显示模式, full 表示全部显示, simple 表示隐藏控制部分显示
LastVolume 0, -1 是否记忆音量设置, 0 表示不记忆, -1 表示记忆
LastPosition 0, -1 是否记忆本次的播放进度, 0 表示不记忆, -1 表示记忆
Title 视频标题 播放器中显示的播放的资源的标题, 例如: 亚瑟的迷你王国A
AdTime 广告长度(单位:秒) 播放开始前, 显示广告时间的长度, 单位秒, 0 表示不显示广告
AdURL 网页URL 播放开始前, 显示广告的URL地址, 如果包含Flash,最好不要启用显示Flash的右键菜单功能, 地址为空,不显示广告
EmbedURL 网页URL 播放停止后, 显示的网页的地址, 地址为空, 表示不显示
EncryptURL 0, -1 是否启用加密的播放地址, 0不启用, -1, 表示启用
URLTokenize 多源播放链接 多源播放时, URL链接的分割字符, 例如: @
URL 播放地址 要播放的视频资源的地址,格式为: http://dommain:port/path/name.[rm/rmvb/wvm/asf/flv], 必须是绝对路径。
AutoStart 0, -1 是否自动开始播放, 0 表示不自动播放, -1 表示自动播放
AlwaysOnTop 0, -1 设置播放器所在的IE穿透是否置顶显示
SkinURL 皮肤的URL 设置播放器的皮肤URL. 自定义的皮肤, 可以通过此参数来设置
TextAds 文字广告 播放器控制栏显示的滚动文字广告的信息
P2PSupport none, private, public 是否启用P2P, none 表示不启用, private 表示对本站的用户启用, public 表示对于播放器所有用户启用
TextAdsTimeslot 文字广告间隔时间(单位:秒) 设置文字广告显示的间隔时间, 默认为 10 秒钟
TextAdsColor 十六进制颜色值 设置广告文字的颜色, 设置值为: XXXXXX, 表示RGB, XX -> R, XX -> G, XX -> B
RedirectURL 0, -1 支持动态的重定向的视频链接的功能, 设置属性: RedirectURL=-1, URL=[动态的重定向地址]
MapPort 0, -1 是否对于内网用户启用端口映射, 公网点播需要设置为-1, 内网点播一定要设置为 0
StopOnEnd 0, -1 控制是否视频播放结束后, 自动停止, 跳转到广告页面
AutoSize 0, -1 控制自动控制IE播放窗口为视频的原始大小. 0 表示不启用, -1 启用
LButtonPause 0, -1 控制是否单击鼠标左键时控制视频的播放/暂停, 0 表示不启用, -1 启用
EmbedAdsURL 内嵌广告的发布地址 发布实时视频内嵌广告模式的URL地址. 商业授权用户才有效, 为空表示不投放
Loop 0, -1 控制是否循环播放视频,0 表示不启用, -1 启用
OrigServers 源服务器的别名或者地址 缓存服务器模式下的源服务器的别名或者地址[要带端口, 80可以省略], 例如: server1 或者 www.webplayer9.com:80
HintErrPath 0, -1 控制是否播放错误时,显示播放的相对文件地址, 0 表示不启用, -1 启用
QualityMode 0, 1 播放控制模式, 0 表示速度优先, 1 表示画面优先. 当选择画面优先时,如果速度不够时会自动缓冲等待数据
DisableProxy -1, 0 控制是否禁止自动启用IE的代理服务器设置,0 表示不禁止, -1 禁止
HttpTimeout 整数值 设置播放器连接服务器的超时长度, 默认长度为2秒
P2PPriority 0,1 设置播放器播放时的P2P算法的优先级别, 默认为0, 建议内网播放设置为0, 外网播放设置为1
NextVideoURL 下一集的播放页面(注意是播放页面) 设置播放器播放完毕后,自动跳转到的下一集的播放页面, 为空则不跳转。
GlobalCache 0, -1 是否允许缓存到内存中以便于实现连续播放。0 表示不缓存, -1标识缓存
Webplayer9 P2P视频点播系统播放页面样例
安装和部署技巧
IE中自动激活WebPlayer9 网络播放器控件的解决办法?

自从微软针对IE浏览器发布了一项更新,禁止了IE浏览器的ActiveX控件自动激活功能。鼠标移动到ActiveX上时四周会出现虚线框,本来直接点ActiveX控件的,现在要先多点一下这个虚线框,特别是对于具有交互性功能的ActiveX控件来说,很麻烦!于是网页设计师们不得不想办法解决这一问题。

比较简单有效的一种的办法是, 方法来自 sitepoint.com中Karina Steffens的文章:

ObjectSwap: Bypassing the ActiveX Activation Issue in IE

使用方法是在

<head></head>

间插入程序代码:

<script type="text/javascript" src="objectSwap.js"></script>

ObjectWrap.js可以从这里下载.

只要是object, ObjectWrap应该都会处理.