第二个大问题:影视系统配置
服务器软件设置解决后,我们只能用一个或者几个固定的用户名播放,这样还是防止不了下载。
先介绍一下我的影视系统配置情况。我是采取了影视系统和现有论坛用户数据库相结合的。只有论坛注册用户才能播放电影。但是就是有那么些用户老是盗下影片,造成服务器流量剧增。
现在的解决方法是:
举列play.asp为播放窗口页面
页面开头就把用户名和一个临时密码写入HELIX数据库。假设有test这个用户已经登陆,他打开play.asp页面后,play,asp中代码如下:
user=session("username") //test用户已经登陆,所以session("username")=test
lsmm=123456 //这里可以写一个随机函数,每次都不一样
pathurl="vod1/" //授权访问路径
然后把user和lsmm用代码写入vod数据库中的user中
再写一个代码赋予test的访问路径到vod数据库中的permissions中
sql="insert into users (userid,password,uuid_writeable,uuid) values ('"&user&"','"&lsmm&"',1,'')"
conn.execute sql
sql="insert into permissions (userid,url,url_type,expires) values ('"&user&"','"&pathurl&"',1,'')"
conn.execute sql
数据库写入完毕后就是播放的代码了,播发代码就是播放窗口了,不用我说了吧。最后就是将user和permissions两个表中的用户信息删除。
sql="delete from USERS;delete from permissions"
conn.execute sql
整个代码流程:
///把用户名写入HELIX数据库////
///播放代码///
///删除用户///
也就是说用户播发电影后马上把其用户和临时密码删除,这样他用任何方法都下载不了了。
思路给大家了,具体怎么操作还是要靠大家自己了阿, 如 你有更好的方法别忘了告诉我啊!
还有一个忘了说,在VOD数据库中的access_log表,里面详细记录了用户播放影片的日志,很实用哦,可以根据这些内容开发更强大的影视系统。
评论:
这种方法适合于在线用户小的用户,实现起来比较方便,无需要任何第三方插件,配置比较烦琐一点,另外还需要自己对数据库操作,人数少时,采用ODBC连接数据库不会出现稳定性的问题。另外加上不停操作数据库,给服务器带来了一些额外开销,特别是如果在线人数多时,可能会遇到认证不能通过的问题。所以只推荐小型客户使用。