提个简单的50分asp问题,防盗链的

恶猫 2004-11-10 09:52:05
看清..

不是下载网站那样的防盗链.
是电影网站的防盗链...

是这样的:

Vod.asp 是视频列表页面....
VodPlay.asp?id=xx 是播放的页面.(影片的地址则是 VodUrl.asp?id=xx 这样的)

现在的要求是:

不能让 VodUrl.asp 单独打开...只能由 VodPlay.asp里面调用才允许输出影片.

或者,大家谁有别的更好的办法的.


搞定马上给分~!~!~!~! 另有.20分在别的版. 一起给分.
...全文
139 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
zeroyou 2004-11-11
  • 打赏
  • 举报
回复
俺和大家有不同的思路,
在VodPlay.asp页面中执行
Server.Execute VodUrl.asp
yidengjiang 2004-11-11
  • 打赏
  • 举报
回复
不要用cookie来验证,这样别人清空cookie就可以了。
我给你个思路:
在一进入VodPlay.asp页面的时候就给一个session("isvalid")="True"
再进行你那些操作,最后再跳转到VodUrl.asp页面,使用?id=12345的形式,不要再使用session("VodID")了,没意义。
一进入VodUrl.asp就验证session("isvalid")是否="True",如果不等于就自动关闭或显示提示信息(如果session("isvalid")不存在也可以直接这样用“=”判断的)。
如果session("isvalid")="True"则用request.querystring("id")得到传过来的ID值,再进行下一步的操作。
你自己仔细想一下吧。
恶猫 2004-11-10
  • 打赏
  • 举报
回复
TTTTTTTTTTTTTTTTTTTTTTTTTT
恶猫 2004-11-10
  • 打赏
  • 举报
回复
我在前一个页面设置了 Cookies("PlayCook")的值为 "3user"

在VodUrl.asp里如下:

Dim ID,PlayU
PlayU = Request.Cookies("PlayCook")
Response.Cookies("PlayCook") = ""
Response.Redirect "error.asp?EID="&PlayU

这样子.转到 error.asp?EID= 这个地址..说明 PlayU 是空的..怎么会是空?????????????

Dim ID,PlayU
PlayU = Request.Cookies("PlayCook")
Response.Redirect "error.asp?EID="&PlayU
Response.Cookies("PlayCook") = ""

如果是这样...则正常转向; error.asp?EID=3user

asp里面还有引用类型不成??????????????????

可是别人用怎么能用.我怎么就不行.晕死.
hell9999 2004-11-10
  • 打赏
  • 举报
回复
用判断session的方法啊
看是不是从前一个页面跳转过来的
否则直接把页面跳转到第一个页面
lane_cn 2004-11-10
  • 打赏
  • 举报
回复
使用服务器的权限设置,或者采用过滤器
任何别的办法都是徒劳的
恶猫 2004-11-10
  • 打赏
  • 举报
回复
TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT笔
恶猫 2004-11-10
  • 打赏
  • 举报
回复
按一步一步的想

先进 VodPlay.asp?id=xx 页面:
---session("VodID")=xx

然后取地址 VodUrl.asp
--读取数据库,取得 rs("Url")
--session("VodID")=""

========一个过程结束.

如果再想直接打开VodUrl.asp 因为 session已空.所以不能操作..

想起来都对吧???可是用起来, 只要加上清空SESSION的语句,, session就是总为空...晕死了.
恶猫 2004-11-10
  • 打赏
  • 举报
回复
- -!! 这么简单的我还用来问吗!!

555555555555555555555555555

TO:天下无双
我说了是电影站!!!不是下载站.你的办法=0

TO:一等奖
还有一个要求,VodUrl.asp 不能被单独打开~!~!

我的办法是,在VodPlay.asp里写入一个 Session("VodID")
然后在 VodUrl.asp 里检查如果 Session("VodID")<>"" 然后再转向正确url..... 现在可以.

可是问题又来了,这时候,再打开别的 VodUrl.asp?id=xx 直接就可以下载了..因为 session() 一直在

所以我在 VodUrl.asp 里从数据库中读到rs("url") 以后,我就设置 session("VodID")="" 了.

可是问题又TNND来了....这样一弄, 总是session("VodID")为空...这为什么???
cnhgj 2004-11-10
  • 打赏
  • 举报
回复
判断来源
yidengjiang 2004-11-10
  • 打赏
  • 举报
回复
很简单啊,在进入VodPlay.asp后给一个session,VodUrl.asp里面再验证该session是否存在以及其值,如果满足条件就打开,否则就不显示任何东西或自动关闭
standy 2004-11-10
  • 打赏
  • 举报
回复
获取本页的前一页面地址,或者用Session

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧