CN108574686A - 一种在线预览文件的方法及装置 - Google Patents

一种在线预览文件的方法及装置 Download PDF

Info

Publication number
CN108574686A
CN108574686A CN201710346447.8A CN201710346447A CN108574686A CN 108574686 A CN108574686 A CN 108574686A CN 201710346447 A CN201710346447 A CN 201710346447A CN 108574686 A CN108574686 A CN 108574686A
Authority
CN
China
Prior art keywords
label
file
request
target
identification information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710346447.8A
Other languages
English (en)
Other versions
CN108574686B (zh
Inventor
汪南
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201710346447.8A priority Critical patent/CN108574686B/zh
Publication of CN108574686A publication Critical patent/CN108574686A/zh
Application granted granted Critical
Publication of CN108574686B publication Critical patent/CN108574686B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供了一种在线预览文件的方法及装置,应用于反向代理服务器。方法为:接收客户端的文件预览请求,将该请求转发给目标服务器,接收返回的携带目标文件对应的文件标识信息的目标URL;生成用以标识该文件预览请求的标签,将该标签和该文件标识信息存入共享缓存;将该标签加入目标URL中,再发送该URL至客户端;接收客户端的跳转请求,从该请求的URL中获得第一标签和第一文件标识信息;在共享缓存中查找是否存在与第一标签相同的标签;若存在,判断该标签是否有效、且对应的文件标识信息与第一文件标识信息是否一致;若是,转发该跳转请求至目标服务器,以使客户端在线预览目标文件。通过本方案,能有效防止用户盗链访问。

Description

一种在线预览文件的方法及装置
技术领域
本发明涉及互联网技术领域,特别是涉及一种在线预览文件的方法及装置。
背景技术
盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。具体地,由于服务内容的URL(Uniform Resoure Locator,统一资源定位器)在服务提供期内一般是固定的,因此,一些服务提供商便可以直接将该URL放在自己的平台,以提供给最终用户来访问对应的服务内容;此外,服务内容的URL一般是有特定规则的,因此,通过对已知的URL进行伪造,还可以得到其他服务内容的URL。
可以看出,受益者不提供资源或提供很少的资源,而真正的服务提供商却得不到任何的收益,严重损害了被盗链网站的利益。因此对于真正的服务提供商来说,做好防盗链至关重要。
其中,针对在线预览文件的应用场景,现有的在线预览文件的方法中,一般是利用HTTP(HyperText Transfer Protoco,超文本传输协议)Referer(引用页)进行防盗链,内容服务器在接收到文件预览请求时,通过检测HTTP Referer是否来自规定域名,如果是,允许访问,如果不是,则禁止访问;其中,HTTP Referer是header(标头)的一部分,当浏览器向Web(World Wide Web,万维网)服务器发送请求的时候,一般会带上Referer,告诉服务器该请求是从哪个页面链接过来的,服务器藉此可以获得一些信息用于处理。举例而言,当在线预览缩略图时,通常由反向代理服务器(如Nginx,一个高性能的HTTP和反向代理服务器)接收客户端发送的携带有Referer的缩略图请求,并按照反向代理服务器的配置信息,将接收到的缩略图请求发送给目标图片处理服务器,而目标图片处理服务器会对Referer进行识别,若该请求来源合法,便根据该请求获取对应的文件,并基于获取到的文件生成缩略图,然后将生成的缩略图缓存到图片处理服务器,经反向代理服务器将缩略图缓存地址返回给发起该请求的客户端。由于HTTP Referer很容易被伪造,且当反向代理服务器和图片处理服务器使用不同的HTTP协议时,Referer可以被绕过,不进行传送,从而导致无法有效防止用户盗链访问。
发明内容
本发明实施例的目的在于提供一种在线预览文件的方法及装置,以有效防止用户盗链访问。具体技术方案如下:
第一方面,本发明实施例提供了一种在线预览文件的方法,应用于反向代理服务器,所述方法包括:
接收客户端发送的关于目标文件的文件预览请求,将所述文件预览请求转发给目标服务器,接收所述目标服务器返回的所述目标文件对应的目标URL;其中,所述目标URL中携带有所述目标文件对应的文件标识信息;
生成用以标识所述文件预览请求的标签,并将所述标签和所述文件标识信息对应存储到共享缓存中;
将所述标签添加到所述目标URL中,并将添加所述标签的目标URL发送至客户端;
接收来自所述客户端的跳转请求,从所述跳转请求的URL中获得第一标签和对应的第一文件标识信息;
在所述共享缓存中查找是否存在与所述第一标签相同的目标标签;
如果存在,判断所述目标标签是否有效、且对应的目标文件标识信息与所述第一文件标识信息是否一致;
若均为是,转发所述跳转请求至所述目标服务器,以使得所述客户端在线预览所述目标文件。
可选地,所述生成用以标识所述文件预览请求的标签的步骤,包括:
按照预设标签生成规则,生成第二标签;
对所述第二标签进行加密,获得用以标识所述文件预览请求的标签。
可选地,所述生成用以标识所述文件预览请求的标签的步骤,包括:
获取生成标签的当前时刻,作为第一当前时刻;
生成随机字符串;
按照预设标签合成规则,将所述目标URL、所述第一当前时刻和所述随机字符串,组合为用以标识所述文件预览请求的标签。
可选地,本发明实施例提供的一种在线预览文件的方法,还包括:
如果在所述共享缓存中没有查找到所述目标标签,或所述目标标签无效,又或所述目标文件标识信息与所述第一文件标识信息不一致,则拒绝转发所述客户端的跳转请求,以禁止所述客户端在线预览所述目标文件。
可选地,在所述转发所述客户端的跳转请求至所述目标服务器的步骤之后,所述方法还包括:
从所述共享缓存中删除所述目标标签。
可选地,在所述将所述标签添加到所述目标URL中的步骤之前,所述方法还包括:
将所述用以标识所述文件预览请求的标签对应的有效期和/或允许访问次数,存储到所述共享缓存中。
可选地,当所述共享缓存中存储有所述用以标识所述文件预览请求的标签对应的允许访问次数时,判断所述目标标签是否有效的方式,包括:
判断所述目标标签对应的允许访问次数是否大于零;
若是,判定所述目标标签有效;将所述目标标签对应的允许访问次数减一;
若否,判定所述目标标签无效。
可选地,当所述共享缓存中存储所述用以标识所述文件预览请求的标签对应的有效期时,判断所述目标标签是否有效的方式,包括:
获取判断所述目标标签是否有效的当前时刻,作为第二当前时刻;
判断所述第二当前时刻是否在所述目标标签对应的有效期内;
若是,判定所述目标标签有效;
若否,判定所述目标标签无效。
第二方面,本发明实施例提供了一种在线预览文件的装置,应用于反向代理服务器,所述装置包括:
接收模块,用于接收客户端发送的关于目标文件的文件预览请求,将所述文件预览请求转发给目标服务器,接收所述目标服务器返回的所述目标文件对应的目标URL;其中,所述目标URL中携带有所述目标文件对应的文件标识信息;
生成模块,用于生成用以标识所述文件预览请求的标签,并将所述标签和所述文件标识信息对应存储到共享缓存中;
添加模块,用于将所述标签添加到所述目标URL中,并将添加了所述标签的目标URL发送至客户端;
获得模块,用于接收来自所述客户端的跳转请求,从所述跳转请求的URL中获得第一标签和对应的第一文件标识信息;
查找模块,用于在所述共享缓存中查找是否存在与所述第一标签相同的目标标签;
判断模块,用于在所述查找模块的查找结果为存在的情况下,判断所述目标标签是否有效、且对应的目标文件标识信息与所述第一文件标识信息是否一致;
转发模块,用于在所述判断模块的判断结果为是的情况下,转发所述跳转请求至所述目标服务器,以使得所述客户端在线预览所述目标文件。
可选地,所述生成模块,包括:
第一生成子模块,用于生成第二标签;
第一获得子模块,用于对所述第二标签进行加密,获得用以标识所述文件预览请求的标签;
第一存储子模块,用于将所述用以标识所述文件预览请求的标签和所述目标文件对应的文件标识信息对应存储到共享缓存中。
可选地,所述生成模块,包括:
第一获取子模块,用于获取生成标签的当前时刻,作为第一当前时刻;
第二生成子模块,用于生成随机字符串;
第二获得子模块,用于按照预设标签合成规则,将所述目标URL、所述第一当前时刻和所述随机字符串,组合为用以标识所述文件预览请求的标签;
第二存储子模块,用于将所述用以标识所述文件预览请求的标签和所述目标文件对应的文件标识信息对应存储到共享缓存中。
可选地,本发明实施例提供的一种在线预览文件的装置,还包括:
禁止模块,用于在所述查找模块的查找结果为不存在所述目标标签,或所述判断模块的判断结果为所述目标标签无效或所述目标文件标识信息与所述第一文件标识信息不一致的情况下,拒绝转发所述客户端的跳转请求,以禁止所述客户端在线预览所述目标文件。
可选地,本发明实施例提供的一种在线预览文件的装置,还包括:
删除模块,用于在所述转发模块转发所述客户端的跳转请求至所述目标服务器之后,从所述共享缓存中删除所述目标标签。
可选地,本发明实施例提供的一种在线预览文件的装置,还包括:
存储模块,用于在所述添加模块将所述用以标识所述文件预览请求的标签添加到所述目标URL中之前,将所述用以标识所述文件预览请求的标签对应的有效期和/或允许访问次数,存储到所述共享缓存中。
可选地,当所述共享缓存中存储有所述用以标识所述文件预览请求的标签对应的允许访问次数时,所述判断模块,包括:
第一判断子模块,用于判断所述目标标签对应的允许访问次数是否大于零;若是,判定所述目标标签有效,并将所述目标标签对应的允许访问次数减一;若否,判定所述目标标签无效。
可选地,当所述共享缓存中存储所述用以标识所述文件预览请求的标签对应的有效期时,所述判断模块,包括:
第二获取子模块,用于获取判断所述目标标签是否有效的当前时刻,作为第二当前时刻;
第二判断子模块,用于判断所述第二当前时刻是否在所述目标标签对应的有效期内;若是,判定所述目标标签有效;若否,判定所述目标标签无效。
本发明实施例提供的一种在线预览文件的方法,应用于反向代理服务器,首先接收客户端发送的关于目标文件的文件预览请求;将该文件预览请求转发给目标服务器,接收目标服务器返回的目标文件对应的目标URL;其中,目标URL中携带有目标文件对应的文件标识信息;生成用以标识该文件预览请求的标签,并将该标签和目标文件对应的文件标识信息存储到共享缓存中;将该标签添加到目标URL中,并将添加该标签的目标URL发送至客户端;接收来自客户端的跳转请求;从该跳转请求的URL中获得第一标签和对应的第一文件标识信息;在共享缓存中查找是否存在与第一标签相同的目标标签;如果存在,判断目标标签是否有效、且对应的目标文件标识信息与第一文件标识信息是否一致;若是,转发该跳转请求至目标服务器,以使得客户端在线预览目标文件。
现有技术中,其他用户可以通过轻易地伪造或者绕过HTTP Referer,来无限制地盗链访问,而本发明实施例提供的技术方案,则摒弃了HTTP Referer,转变了方式,对每一次文件预览请求都利用标签进行标识和判断,只有在客户端对应的跳转请求的URL中携带本次文件预览请求对应的标签和文件标识信息,且该标签有效时,才会转发客户端的跳转请求至目标服务器,以使得客户端在线预览目标文件,与现有技术相比,有效防止了用户盗链访问。此外,与现有技术相比,本发明实施例提供的技术方案,在目标服务器上不作任何判断,因此也无需变更原有的目标服务器,只在反向代理服务器进行设置即可,整个防盗链流程对于客户端和目标服务器来说都是无感知的;并且,当反向代理服务器代理多个目标服务器时,本发明实施例提供的技术方案能够实现最小化改动,更友好。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种在线预览文件的方法的流程示意图;
图2为图1所示发明实施例的一具体实施例的流程示意图;
图3为本发明实施例提供的一种在线预览文件的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为有效防止用户盗链访问,本发明实施例提供了一种在线预览文件的方法及装置。
下面将首先对本发明实施例提供的一种在线预览文件的方法进行介绍。
需要说明的是,反向代理服务器(如Nginx)是运行有反向代理程序的计算机,由它来接受Internet(因特网)上来自客户端的连接请求,然后将该请求转发给内部网络上的服务器,并将从内部网络上的服务器得到的结果返回给该请求对应的客户端。其中,客户端,又称为用户端,是指与服务器相对应,为客户提供本地服务的程序;具体地,本发明实施例中提到的客户端可以是万维网使用的网页浏览器,也可以是APP(Application,指手机软件),又或者其他合理的客户端,在此不作限定。
参见图1所示,本发明实施例提供的一种在线预览文件的方法,应用于反向代理服务器,包括如下步骤:
S101,接收客户端发送的关于目标文件的文件预览请求,将该文件预览请求转发给目标服务器,接收目标服务器返回的目标文件对应的目标URL。
需要说明的是,在反向代理服务器接收到客户端发送的关于目标文件的文件预览请求后,可以将该文件预览请求转发给目标服务器,而目标服务器在接收到反向代理服务器转发的该文件预览请求后,可以根据该文件预览请求,确定目标文件对应的目标URL,并返回给反向代理服务器。其中,目标文件可以为图片文件,也可以为文档文件等,此处不作限定。
在本发明实施例的一种具体实现方式中,目标文件可以为服务提供商直接存储的原文件,可以理解的是,该文件预览请求中携带有目标文件的标识信息,当然,也可以包括一些其他有用的信息,比如版本号、文件名等,目标服务器在接收到该文件预览请求后,可以根据目标文件的标识信息确定目标文件对应的目标URL,并返回给反向代理服务器。
在本发明实施例的另一种具体实现方式中,目标文件可以不是服务提供商直接存储的原文件,而是原文件经过一定处理后的文件,可以理解的是,该文件预览请求中携带有原文件的标识信息,目标服务器在接收到该文件预览请求后,可以根据原文件的标识信息,查找到原文件,并根据预设的属性信息(如文件格式、大小等)对原文件进行处理,生成目标文件并进行存储;然后将目标文件对应的目标URL返回给反向代理服务器。其中,目标URL中携带有目标文件对应的文件标识信息,根据目标URL预设的构造法则,该文件标识信息可能为目标URL中携带的目标文件的文件名,也可能为目标文件的文件名中的一部分,或者目标URL中携带的其他内容,能够对目标文件进行标识即可,在此不作限定。
此外,该文件预览请求中还可以携带有针对目标文件的属性信息,然后在查找到原文件后,可以根据该文件预览请求中携带的针对目标文件的属性信息来生成目标文件。
可以理解的是,后续再收到针对该目标文件的预览请求时,可以直接返回对应的目标URL,而不需再重新生成该目标文件。
举例而言,反向代理服务器接收到缩略图的预览请求,并转发给图片处理服务器(即目标服务器),其中,该请求中携带有缩略图对应的原图的标识信息如IMG_1、目标文件的属性信息如缩略图的宽高(50px,50px),图片处理服务器将从指定的存储空间中获得标识信息为IMG_1的原图,并根据该原图生成宽高为(50px,50px)的缩略图,然后存储到指定位置,再将缩略图对应的目标URL返回给代理服务器。
当然,上述所述两种实现方式,仅为本发明实施例中的两种具体实现方式,不具有限定作用。
S102,生成用以标识该文件预览请求的标签,并将该标签和目标文件对应的文件标识信息对应存储到共享缓存中。
其中,共享缓存,又称作shared dict,为反向代理服务器的缓存空间。
需要说明的是,反向代理服务器在接收到目标服务器返回的目标文件对应的目标URL后,可以首先生成用以标识该文件预览请求的标签,并将该标签和目标文件对应的文件标识信息对应存储到共享缓存中,以执行后续步骤。具体地,该标签可以为:基于目标URL、当前时刻和一个16位随机字符串来生成的,或者结合当前时刻和一个随机数来生成的,当然,也可以为采用其他合理的规则生成的,只需生成的标签能够唯一标识该文件预览请求即可,此处不对该标签的生成规则进行限定。
需要说明的是,现有技术中,服务器上文件的URL一般是有特定规则的,因此,通过对已知的URL进行伪造,还可以得到其他文件的URL,再伪造或者绕过HTTP Referer,便可以轻易地去访问其他文件,实现盗链访问。举例而言,例如服务器上文件一般是按照序号进行命名的,并以文件名中的文件主名对文件进行标识:scplan1.doc、scplan2.doc、scplan3.doc等,如果已知文件scplan1.doc的URL为:http://192.168.1.5/work/scplan1.doc,那么,直接修改scplan1.doc的文件主名scplan1为scplan2,向目标服务器发起向http://192.168.1.5/work/scplan2.doc的跳转请求,与此同时伪造一个HTTPReferer,让目标服务器误以为该请求来源合法,便可以对scplan2进行在线预览。其中,文件名是为文件指定的名称,包括文件主名和扩展名,文件主名和扩展名之间由一个小圆点隔开,举例而言,文件名“file_end.doc”中,“file_end”为文件主名,“doc”为扩展名。
为防止上述情况发生,在本发明实施例的一种具体实现方式中,所述生成用以标识该文件预览请求的标签的步骤,可以包括:
按照预设标签生成规则,生成第二标签;
对第二标签进行加密,获得用以标识该文件预览请求的标签。
可以理解的是,可以将按照预设标签生成规则,生成的第二标签进行加密,然后将加密后的标签作为用以标识该文件预览请求的标签,此时,该标签为密文,其他用户无法得知该标签的生成规则,便无法伪造其他文件添加了标签的目标URL,从而有效防止了用户盗链访问的发生。其中,加密算法可以为现有技术中的任一加密算法,如MD5加密算法,具体地,可以综合实际需求以及加密算法的复杂度来进行选择,此处不作限定。
在本发明实施例的另一种具体实现方式中,所述生成用以标识该文件预览请求的标签的步骤,可以包括:
获取生成标签的当前时刻,作为第一当前时刻;
生成随机字符串;
按照预设标签合成规则,基于目标URL、第一当前时刻和随机字符串,获得用以标识该文件预览请求的标签。
其中,“第一当前时刻”中的“第一”仅用作与其他时刻获取的“当前时刻”作区分,不具有限定作用;随机字符串可以为16位,也可以为32位,或者其他合适位数,在此不作限定。
可以理解的是,为生成唯一标识该文件预览请求的标签,可以基于目标文件对应的目标URL、当前时刻和随机字符串,按照预设标签合成规则,获得用以标识该文件预览请求的标签。其中,当前时刻的加入可以区分其他时段对于该目标文件的文件预览请求,生成唯一标识本次针对目标文件的文件预览请求。
需要说明的是,其他用户即使在S103后截取到了返回给客户端的目标URL,并从中获得了用以标识该文件预览请求的标签的生成规则,但由于第一标签是基于目标URL、当前时刻和随机字符串生成的,具有非常大的随机性,因此,也难以伪造其他文件添加了标签的URL,有效防止了用户盗链访问。
具体地,预设标签合成规则可以为:将目标URL、第一当前时刻和随机字符串直接合并成一个字符串;也可以为:将目标URL中携带的目标文件对应的文件标识信息、第一当前时刻和随机字符串合并成一个字符串,其中,合并顺序不作限定。当然,预设标签合成规则也可以为其他合理的合成规则,按照该合成规则,基于目标URL、第一当前时刻和随机字符串,能够获得用以标识该文件预览请求的第一标签即可,关于该合成规则的具体内容,在此不作限定。
当然,在实际应用中,也可以综合上述两种具体实现方式来生成用以标识该文件预览请求的标签,或者采用其他合适的规则来生成第一标签,此处不作限定。
S103,将该标签添加到目标URL中,并将添加了该标签的目标URL发送至该客户端。
其中,可以将生成的用以标识该文件预览请求的标签添加到目标URL中,然后将添加了该标签的目标URL发送至客户端;具体地,将状态码302与目标URL一起发送至该客户端,以使得该客户端根据状态码302重定向至目标URL,向反向代理服务器发起跳转请求。其中,状态码302表示临时性重定向(302found),请求的资源临时分配了新URL,本次请求暂且使用新URL。
S104,接收来自该客户端的跳转请求,从该跳转请求的URL中获得第一标签和对应的第一文件标识信息。
其中,“第一标签”中的“第一”仅用以与反向代理服务器在接收到文件预览请求后生成的标签作区分;“第一文件标识信息”中的“第一”仅用以与其他文件标识信息作区分,不具有限定作用。
需要说明的是,该客户端接收到反向代理服务器返回的目标URL后,将向反向代理服务器发起跳转至目标服务器的请求,而反向代理服务器在接收到来自该客户端的跳转请求后,可以从该跳转请求的URL中获得第一标签以及对应的第一文件标识信息,来进行后续的判断。
S105,在共享缓存中查找是否存在与第一标签相同的目标标签;若是,则执行S106,否则,执行S108。
可以理解的是,若在共享缓存中查找到了与第一标签相同的目标标签,便可以执行S106,进一步地验证该跳转请求的合法性;否则,执行S108,拒绝该跳转请求。
S106,判断目标标签是否有效、且对应的目标文件标识信息与第一文件标识信息是否一致;若均为是,执行S107,否则,执行S108。
需要强调的是,只有在目标标签有效且对应的目标文件标识信息与第一文件标识信息一致时,才表明该跳转请求合法,此时,应执行S107,以转发该跳转请求至目标服务器;否则,执行S108,拒绝该跳转请求。其中,目标标签对应的目标文件标识信息与第一文件标识信息一致,表明S101中文件预览请求所请求的文件与S104中来自该客户端的该跳转请求所请求的文件相同,都是目标文件;如此,在满足了合法客户端在线预览目标文件的需求的同时,也可以防止其他用户根据已知的添加了标签的URL,通过修改该URL中的文件标识信息(如文件名)来对其他文件进行盗链访问。
需要说明的是,在本发明实施例的一种具体实现方式中,在所述将该标签添加到目标URL中的步骤之前,本发明实施例提供的一种在线预览文件的方法,还可以包括:
将用以标识该文件预览请求的标签对应的有效期和/或允许访问次数,存储到共享缓存中。
可以理解的是,在将用以标识该文件预览请求的标签添加到目标URL中之前,具体地,可以在将该标签和目标文件对应的文件标识信息存储到共享缓存中时,将该标签对应的有效期和/或允许访问次数一起存储到共享缓存中,作为后续判断目标标签是否有效的条件。其中,该标签对应的有效期和/或允许访问次数可以根据实际需求而定,可以理解的是,有效期越短和/或允许访问次数越少,越能有效防止用户的盗链访问。这样,即使其他用户获取到了反向代理服务器返回给客户端的URL,也将因为超出有效期或者对应允许访问次数为零了,而难以进行盗链访问。
需要说明的是,查找到的目标标签即为S102中生成的标签,且目标标签对应的允许访问次数和/或有效期,即为共享缓存中存储的该标签对应的允许访问次数和/或有效期。
因此,在本发明实施例的一种具体实现方式中,当共享缓存中存储有用以标识该文件预览请求的标签对应的允许访问次数时,判断目标标签是否有效的方式,可以包括:
判断目标标签对应的允许访问次数是否大于零;
若是,判定目标标签有效;将目标标签对应的允许访问次数减一;
若否,判定目标标签无效。
如果目标标签对应的允许访问次数大于零,那么,可以判定目标标签有效,客户端将被允许进行跳转,以在线预览目标文件,相应地,需在共享缓存中将目标标签对应的允许访问次数减一,以便后续继续进行判断。
在该种具体实现方式中,可以将用以标识该文件预览请求的标签对应的允许访问次数设为1,如此当该客户端在线预览目标文件后,该标签的状态即为无效,其他用户在通过返回给客户端的目标URL,向反向代理服务器发起跳转请求时,均会由于跳转请求中的标签无效而被拒绝,从而有效防止其他用户的盗链访问。
在本发明实施例的另一种具体实现方式中,当共享缓存中存储用以标识该文件预览请求的标签对应的有效期时,判断目标标签是否有效的方式,可以包括:
获取判断目标标签是否有效的当前时刻,作为第二当前时刻;
判断第二当前时刻是否在目标标签对应的有效期内;
若是,判定目标标签有效;
若否,判定目标标签无效。
其中,“第二当前时刻”中的“第二”仅用作与其他时刻获取的“当前时刻”作区分,不具有限定作用。
可以理解的是,反向代理服务器在接收到来自客户端的跳转请求时,可以通过时间戳函数,或者其他方式,获取当前时刻,即第二当前时刻,然后判断第二当前时刻是否在目标标签对应的有效期内,若是,则判定目标标签有效;否则,判定目标标签无效。其中,有效期可以一段时间的形式进行存储,例如2017年3月1日0点至2017年3月1日12点;也可以目标标签生成时间和有效时长的形式进行存储,例如目标标签生成时间为2017年3月1日1点10分,有效时长为7小时,那么,若第二当前时刻位于2017年3月1日1点10分至2017年3月1日8点10分间,便表明第二当前时刻在目标标签对应的有效期内,目标标签有效,否则目标标签无效。当然,有效期也可以其他合理的形式进行存储,此处不作限定。
举例而言,假设第二当前时刻为2017年3月10日10点3分,目标标签对应的有效期为2017年3月10日0点至2017年3月10日24点,可以看出第二当前时刻在目标标签对应的有效期内,因此,目标标签有效。
需要强调的是,除上述两种方式外,还可以按照其他合理的方式,来判断目标标签是否有效,在此不作限定。
S107,转发该跳转请求至目标服务器,以使得该客户端在线预览目标文件。
其中,在S106的判断结果为是,即在共享缓存中查找到了目标标签,目标标签有效,且对应的目标文件标识信息与第一文件标识信息一致的情况下,可以转发来自该客户端的该跳转请求至目标服务器,进行目标文件的访问,即在线预览目标文件。
可选地,在所述转发该跳转请求至目标服务器的步骤之后,本发明实施例提供的一种在线预览文件的方法,还可以包括:
从共享缓存中删除目标标签。
需要说明的是,还可以在转发该跳转请求至目标服务器后,将目标标签从共享缓存中删除,这样,其他用户在根据该跳转请求再次请求跳转时,便会由于在共享缓存中查找不到目标标签而被拒绝跳转,如此,可有效防止其他用户的盗链访问。
S108,拒绝转发该客户端的跳转请求,以禁止该客户端在线预览目标文件。
需要说明的是,当S105的执行结果为否,即在共享缓存中没有查找到与第一标签相同的目标标签时;以及当S106的执行结果为否,即查找到了目标标签但目标标签无效,或者目标标签对应的目标文件标识信息与第一标签对应的第一文件标识信息不一致时,均表明该客户端的跳转请求不合法,因此,可拒绝转发该客户端的跳转请求,以禁止该客户端在线预览目标文件。
举例而言,假设S104中,从来自客户端A的跳转请求的URL中获得第二标签为TAG1和文件标识信息为FILE1。若在共享缓存中没有查找到TAG1;或者查找到了TAG1,但共享缓存中TAG1对应的文件标识信息为FILE2,即TAG1是针对文件FILE2的预览请求生成的标签,又或者TAG1无效,则拒绝转发客户端A的跳转请求,禁止该客户端在线预览FILE1标识的目标文件。
现有技术中,其他用户可以通过轻易地伪造或者绕过HTTP Referer,来无限制地盗链访问,而图1所示发明实施例提供的技术方案,则摒弃了HTTP Referer,转变了方式,对每一次文件预览请求都利用标签进行标识和判断,只有在客户端对应的跳转请求的URL中携带本次文件预览请求对应的标签和文件标识信息,且该标签有效时,才会转发客户端的跳转请求至目标服务器,以使得客户端在线预览目标文件,与现有技术相比,有效防止了用户盗链访问。此外,与现有技术相比,图1所示发明实施例提供的技术方案,在目标服务器上不作任何判断,因此也无需变更原有的目标服务器,只在反向代理服务器进行设置即可,整个防盗链流程对于客户端和目标服务器来说都是无感知的;并且,当反向代理服务器代理多个目标服务器时,图1所示发明实施例提供的技术方案能够实现最小化改动,更友好。
为清楚起见,下面将通过一具体实施例进行详细说明:
假设反向代理服务器为Nginx,其中Nginx是一个高性能的HTTP和反向代理服务器;目标文件为图片Img_1的缩略图文件,缩略图大小为50px×50px;目标服务器为图片处理服务器,用以生成缩略图,原图均存储在指定的分布式存储空间;参见图2所示,该具体实施例可以包括如下步骤:
S201,接收客户端发送的关于图片Img_1的缩略图的文件预览请求,将该文件预览请求转发给图片处理服务器,接收图片处理服务器返回的缩略图对应的目标URL。
可以理解的是,该文件预览请求中包括图片的标识信息Img_1和该图片的缩略图大小50px×50px,图片处理服务器接收到Nginx转发的该文件预览请求后,会根据Img_1去指定的分布式存储空间获取对应图片,并下载到本地,然后生成大小为50px×50px的缩略图img1,并缓存到本地磁盘,然后将img1对应的目标URL返回给Nginx。其中,假设img1缓存到图片处理服务器对应的网站的根目录下的img文件夹中,而图片处理服务器对应的网站的URL为:http://192.168.4.1,则目标URL即为http://192.168.4.1/img/img1.jpeg。其中,目标URL携带有请求的缩略图的第一文件标识信息:img1。
S202,生成用以标识该文件预览请求的标签,并将该标签和目标文件对应的文件标识信息对应存储到共享缓存中。
其中,可以先获取当前时刻,假设为2017年04月01号10点04分;然后,生成一个16位的随机字符串,假设为:p8ldPzbgmfJisnzt;将目标URL中的缩略图的标识信息img1和当前时刻以及随机字符串合并,生成一个字符串:img1201704011004p8ldPzbgmfJisnzt,再对合并生成的字符串进行MD5加密,获得一个32位的标签:8519d63337713139c80b7f720458181d,并将该标签以及对应的缩略图标识信息“img1”存储到Nginx的共享缓存中。
S203,将该标签添加到目标URL中,并将添加该标签的目标URL发送至客户端。
例如,当用以标识该文件预览请求的标签为S202所举示例“8519d63337713139c80b7f720458181d”,目标URL为S201所举示例http://192.168.4.1/img/img1.jpeg时,可以将该标签加入到目标URL中,此时该目标URL可以为http://192.168.4.1/img/8519d63337713139c80b7f720458181d/img1.jpeg,然后将添加了标签的该目标URL返回给客户端。
S204,接收来自该客户端的跳转请求,从该跳转请求的URL中获得第一标签和对应的第一文件标识信息。
需要说明的是,客户端接收到Nginx返回的目标URL与状态码302后,会向Nginx发起跳转至图片处理服务器的请求,Nginx在接收到来自该客户端的跳转请求后,会从该跳转请求的URL中获得第一标签和对应的第一文件标识信息。假设,S203中,由Nginx发送至客户端的目标URL为http://192.168.4.1/img/8519d63337713139c80b7f720458181d/img1.jpeg,那么,可以理解的是,若目标URL没有被篡改,Nginx在本步骤中获得的第一标签和第一文件标识信息分别为:8519d63337713139c80b7f720458181d和img1。
S205,在共享缓存中查找是否存在与第一标签相同的目标标签,若是,执行S206,否则执行S208。
举例而言,若在共享缓存中查找到与第一标签“8519d63337713139c80b7f720458181d”相同的目标标签,那么,便可以执行S206,进一步地验证该跳转请求的合法性。
S206,判断目标标签是否有效、且对应的目标文件标识信息与第一文件标识信息是否一致;若均为是,执行S207,否则,执行S208。
需要说明的是,在S205所举示例的基础上,若在共享缓存中目标标签“8519d63337713139c80b7f720458181d”对应的有效次数为1,且该标签对应的缩略图标识信息为img1,与跳转请求的URL中获取到的第一文件标识信息一致,那么,则表明S204中接收到的跳转请求合法,应执行S207,以转发该跳转请求至目标服务器。
S207,转发该跳转请求至图片处理服务器,以使得该客户端在线预览图片Img_1的缩略图。
S208,拒绝转发该客户端的跳转请求,以禁止该客户端在线预览图片Img_1的缩略图。
当然,上面所举示例仅为本发明实施例的一具体实施例,不具有限定作用。
相应于上述方法流程,如图3所示,本发明实施例提供了一种在线预览文件的装置,应用于反向代理服务器,与图1所示流程相对应,所述装置包括:
接收模块301,用于接收客户端发送的关于目标文件的文件预览请求,将所述文件预览请求转发给目标服务器,接收所述目标服务器返回的所述目标文件对应的目标URL;其中,所述目标URL中携带有所述目标文件对应的文件标识信息;
生成模块302,用于生成用以标识所述文件预览请求的标签,并将所述标签和所述文件标识信息对应存储到共享缓存中;
添加模块303,用于将所述标签添加到所述目标URL中,并将添加了所述标签的目标URL发送至客户端;
获得模块304,用于接收来自所述客户端的跳转请求,从所述跳转请求的URL中获得第一标签和对应的第一文件标识信息;
查找模块305,用于在所述共享缓存中查找是否存在与所述第一标签相同的目标标签;
判断模块306,用于在所述查找模块305的查找结果为存在的情况下,判断所述目标标签是否有效、且对应的目标文件标识信息与所述第一文件标识信息是否一致;
转发模块307,用于在所述判断模块306的判断结果为是的情况下,转发所述跳转请求至所述目标服务器,以使得所述客户端在线预览所述目标文件;
禁止模块308,用于在所述查找模块305的查找结果为不存在所述目标标签,或所述判断模块306的判断结果为所述目标标签无效或所述目标文件标识信息与所述第一文件标识信息不一致的的情况下,拒绝转发所述客户端的跳转请求,以禁止所述客户端在线预览所述目标文件。
现有技术中,其他用户可以通过轻易地伪造或者绕过HTTP Referer,来无限制地盗链访问,而图3所示发明实施例提供的技术方案,则摒弃了HTTP Referer,转变了方式,对每一次文件预览请求都利用标签进行标识和判断,只有在客户端对应的跳转请求的URL中携带本次文件预览请求对应的标签和文件标识信息,且该标签有效时,才会转发客户端的跳转请求至目标服务器,以使得客户端在线预览目标文件,与现有技术相比,有效防止了用户盗链访问。此外,与现有技术相比,图3所示发明实施例提供的技术方案,在目标服务器上不作任何判断,因此也无需变更原有的目标服务器,只在反向代理服务器进行设置即可,整个防盗链流程对于客户端和目标服务器来说都是无感知的;并且,当反向代理服务器代理多个目标服务器时,图3所示发明实施例提供的技术方案能够实现最小化改动,更友好。
可选地,所述生成模块302,可以包括:
第一生成子模块(图中未示出),用于生成第二标签;
第一获得子模块(图中未示出),用于对所述第二标签进行加密,获得用以标识所述文件预览请求的标签;
第一存储子模块(图中未示出),用于将所述用以标识所述文件预览请求的标签和所述目标文件对应的文件标识信息对应存储到共享缓存中。
可选地,所述生成模块302,可以包括:
第一获取子模块(图中未示出),用于获取生成标签的当前时刻,作为第一当前时刻;
第二生成子模块(图中未示出),用于生成随机字符串;
第二获得子模块(图中未示出),用于按照预设标签合成规则,将所述目标URL、所述第一当前时刻和所述随机字符串,组合为用以标识所述文件预览请求的标签;
第二存储子模块(图中未示出),用于将所述用以标识所述文件预览请求的标签和所述目标文件对应的文件标识信息对应存储到共享缓存中。
可选地,本发明实施例提供的一种在线预览文件的装置,还可以包括:
删除模块(图中未示出),用于在所述转发模块307转发所述客户端的跳转请求至所述目标服务器之后,从所述共享缓存中删除所述目标标签。
可选地,本发明实施例提供的一种在线预览文件的装置,还可以包括:
存储模块(图中未示出),用于在所述添加模块303将所述用以标识所述文件预览请求的标签添加到所述目标URL中之前,将所述用以标识所述文件预览请求的标签对应的有效期和/或允许访问次数,存储到所述共享缓存中。
可选地,当所述共享缓存中存储有所述用以标识所述文件预览请求的标签对应的允许访问次数时,所述判断模块306,可以包括:
第一判断子模块(图中未示出),用于判断所述目标标签对应的允许访问次数是否大于零;若是,判定所述目标标签有效,并将所述目标标签对应的允许访问次数减一;若否,判定所述目标标签无效。
可选地,当所述共享缓存中存储所述用以标识所述文件预览请求的标签对应的有效期时,所述判断模块306,可以包括:
第二获取子模块(图中未示出),用于获取判断所述目标标签是否有效的当前时刻,作为第二当前时刻;
第二判断子模块(图中未示出),用于判断所述第二当前时刻是否在所述目标标签对应的有效期内;若是,判定所述目标标签有效;若否,判定所述目标标签无效。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (16)

1.一种在线预览文件的方法,其特征在于,应用于反向代理服务器,所述方法包括:
接收客户端发送的关于目标文件的文件预览请求,将所述文件预览请求转发给目标服务器,接收所述目标服务器返回的所述目标文件对应的目标URL;其中,所述目标URL中携带有所述目标文件对应的文件标识信息;
生成用以标识所述文件预览请求的标签,并将所述标签和所述文件标识信息对应存储到共享缓存中;
将所述标签添加到所述目标URL中,并将添加了所述标签的目标URL发送至客户端;
接收来自所述客户端的跳转请求,从所述跳转请求的URL中获得第一标签和对应的第一文件标识信息;
在所述共享缓存中查找是否存在与所述第一标签相同的目标标签;
如果存在,判断所述目标标签是否有效、且对应的目标文件标识信息与所述第一文件标识信息是否一致;
若均为是,转发所述跳转请求至所述目标服务器,以使得所述客户端在线预览所述目标文件。
2.根据权利要求1所述的方法,其特征在于,所述生成用以标识所述文件预览请求的标签的步骤,包括:
按照预设标签生成规则,生成第二标签;
对所述第二标签进行加密,获得用以标识所述文件预览请求的标签。
3.根据权利要求1所述的方法,其特征在于,所述生成用以标识所述文件预览请求的标签的步骤,包括:
获取生成标签的当前时刻,作为第一当前时刻;
生成随机字符串;
按照预设标签合成规则,将所述目标URL、所述第一当前时刻和所述随机字符串,组合为用以标识所述文件预览请求的标签。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果在所述共享缓存中没有查找到所述目标标签,或所述目标标签无效,又或所述目标文件标识信息与所述第一文件标识信息不一致,则拒绝转发所述客户端的跳转请求,以禁止所述客户端在线预览所述目标文件。
5.根据权利要求1所述的方法,其特征在于,在所述转发所述客户端的跳转请求至所述目标服务器的步骤之后,所述方法还包括:
从所述共享缓存中删除所述目标标签。
6.根据权利要求1至5任一项所述的方法,其特征在于,在所述将所述标签添加到所述目标URL中的步骤之前,所述方法还包括:
将所述用以标识所述文件预览请求的标签对应的有效期和/或允许访问次数,存储到所述共享缓存中。
7.根据权利要求6所述的方法,其特征在于,当所述共享缓存中存储有所述用以标识所述文件预览请求的标签对应的允许访问次数时,判断所述目标标签是否有效的方式,包括:
判断所述目标标签对应的允许访问次数是否大于零;
若是,判定所述目标标签有效;将所述目标标签对应的允许访问次数减一;
若否,判定所述目标标签无效。
8.根据权利要求6所述的方法,其特征在于,当所述共享缓存中存储所述用以标识所述文件预览请求的标签对应的有效期时,判断所述目标标签是否有效的方式,包括:
获取判断所述目标标签是否有效的当前时刻,作为第二当前时刻;
判断所述第二当前时刻是否在所述目标标签对应的有效期内;
若是,判定所述目标标签有效;
若否,判定所述目标标签无效。
9.一种在线预览文件的装置,其特征在于,应用于反向代理服务器,所述装置包括:
接收模块,用于接收客户端发送的关于目标文件的文件预览请求,将所述文件预览请求转发给目标服务器,接收所述目标服务器返回的所述目标文件对应的目标URL;其中,所述目标URL中携带有所述目标文件对应的文件标识信息;
生成模块,用于生成用以标识所述文件预览请求的标签,并将所述标签和所述文件标识信息对应存储到共享缓存中;
添加模块,用于将所述标签添加到所述目标URL中,并将添加了所述标签的目标URL发送至客户端;
获得模块,用于接收来自所述客户端的跳转请求,从所述跳转请求的URL中获得第一标签和对应的第一文件标识信息;
查找模块,用于在所述共享缓存中查找是否存在与所述第一标签相同的目标标签;
判断模块,用于在所述查找模块的查找结果为存在的情况下,判断所述目标标签是否有效、且对应的目标文件标识信息与所述第一文件标识信息是否一致;
转发模块,用于在所述判断模块的判断结果为是的情况下,转发所述跳转请求至所述目标服务器,以使得所述客户端在线预览所述目标文件。
10.根据权利要求9所述的装置,其特征在于,所述生成模块,包括:
第一生成子模块,用于生成第二标签;
第一获得子模块,用于对所述第二标签进行加密,获得用以标识所述文件预览请求的标签;
第一存储子模块,用于将所述用以标识所述文件预览请求的标签和所述目标文件对应的文件标识信息对应存储到共享缓存中。
11.根据权利要求9所述的装置,其特征在于,所述生成模块,包括:
第一获取子模块,用于获取生成标签的当前时刻,作为第一当前时刻;
第二生成子模块,用于生成随机字符串;
第二获得子模块,用于按照预设标签合成规则,将所述目标URL、所述第一当前时刻和所述随机字符串,组合为用以标识所述文件预览请求的标签;
第二存储子模块,用于将所述用以标识所述文件预览请求的标签和所述目标文件对应的文件标识信息对应存储到共享缓存中。
12.根据权利要求9所述的装置,其特征在于,所述装置还包括:
禁止模块,用于在所述查找模块的查找结果为不存在所述目标标签,或所述判断模块的判断结果为所述目标标签无效或所述目标文件标识信息与所述第一文件标识信息不一致的情况下,拒绝转发所述客户端的跳转请求,以禁止所述客户端在线预览所述目标文件。
13.根据权利要求9所述的装置,其特征在于,所述装置还包括:
删除模块,用于在所述转发模块转发所述客户端的跳转请求至所述目标服务器之后,从所述共享缓存中删除所述目标标签。
14.根据权利要求9至13任一项所述的装置,其特征在于,所述装置还包括:
存储模块,用于在所述添加模块将所述用以标识所述文件预览请求的标签添加到所述目标URL中之前,将所述用以标识所述文件预览请求的标签对应的有效期和/或允许访问次数,存储到所述共享缓存中。
15.根据权利要求14所述的装置,其特征在于,当所述共享缓存中存储有所述用以标识所述文件预览请求的标签对应的允许访问次数时,所述判断模块,包括:
第一判断子模块,用于判断所述目标标签对应的允许访问次数是否大于零;若是,判定所述目标标签有效,并将所述目标标签对应的允许访问次数减一;若否,判定所述目标标签无效。
16.根据权利要求14所述的装置,其特征在于,当所述共享缓存中存储所述用以标识所述文件预览请求的标签对应的有效期时,所述判断模块,包括:
第二获取子模块,用于获取判断所述目标标签是否有效的当前时刻,作为第二当前时刻;
第二判断子模块,用于判断所述第二当前时刻是否在所述目标标签对应的有效期内;若是,判定所述目标标签有效;若否,判定所述目标标签无效。
CN201710346447.8A 2017-05-17 2017-05-17 一种在线预览文件的方法及装置 Active CN108574686B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710346447.8A CN108574686B (zh) 2017-05-17 2017-05-17 一种在线预览文件的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710346447.8A CN108574686B (zh) 2017-05-17 2017-05-17 一种在线预览文件的方法及装置

Publications (2)

Publication Number Publication Date
CN108574686A true CN108574686A (zh) 2018-09-25
CN108574686B CN108574686B (zh) 2021-08-06

Family

ID=63576045

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710346447.8A Active CN108574686B (zh) 2017-05-17 2017-05-17 一种在线预览文件的方法及装置

Country Status (1)

Country Link
CN (1) CN108574686B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111651416A (zh) * 2020-06-04 2020-09-11 携程旅游信息技术(上海)有限公司 Sketch项目文件上传预览方法、系统、设备及介质
CN111917787A (zh) * 2020-08-06 2020-11-10 北京奇艺世纪科技有限公司 请求检测方法、装置、电子设备和计算机可读存储介质
CN112183045A (zh) * 2020-09-23 2021-01-05 北京字跳网络技术有限公司 在线文档处理方法、装置和电子设备
CN114143577A (zh) * 2021-11-26 2022-03-04 中国电信集团系统集成有限责任公司 一种视频获取方法及系统
CN115878676A (zh) * 2023-02-08 2023-03-31 成都数联云算科技有限公司 一种预览文件的方法、装置、设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100211780A1 (en) * 2009-02-19 2010-08-19 Prakash Umasankar Mukkara Secure network communications
CN102025749A (zh) * 2011-01-18 2011-04-20 中国联合网络通信集团有限公司 移动流媒体业务防盗用方法
CN103067409A (zh) * 2013-01-21 2013-04-24 中国科学院信息工程研究所 一种web盗链防护方法及其网关系统
CN104320377A (zh) * 2014-09-25 2015-01-28 华为技术有限公司 一种流媒体文件的防盗链方法及设备
CN104753966A (zh) * 2013-12-25 2015-07-01 明博教育科技有限公司 一种基于服务器和客户端缓存的资源文件查询方法及系统
CN105827673A (zh) * 2015-01-05 2016-08-03 中国移动通信集团浙江有限公司 一种防盗链的方法、装置及网络服务器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100211780A1 (en) * 2009-02-19 2010-08-19 Prakash Umasankar Mukkara Secure network communications
CN102025749A (zh) * 2011-01-18 2011-04-20 中国联合网络通信集团有限公司 移动流媒体业务防盗用方法
CN103067409A (zh) * 2013-01-21 2013-04-24 中国科学院信息工程研究所 一种web盗链防护方法及其网关系统
CN104753966A (zh) * 2013-12-25 2015-07-01 明博教育科技有限公司 一种基于服务器和客户端缓存的资源文件查询方法及系统
CN104320377A (zh) * 2014-09-25 2015-01-28 华为技术有限公司 一种流媒体文件的防盗链方法及设备
CN105827673A (zh) * 2015-01-05 2016-08-03 中国移动通信集团浙江有限公司 一种防盗链的方法、装置及网络服务器

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111651416A (zh) * 2020-06-04 2020-09-11 携程旅游信息技术(上海)有限公司 Sketch项目文件上传预览方法、系统、设备及介质
CN111917787A (zh) * 2020-08-06 2020-11-10 北京奇艺世纪科技有限公司 请求检测方法、装置、电子设备和计算机可读存储介质
CN111917787B (zh) * 2020-08-06 2023-07-21 北京奇艺世纪科技有限公司 请求检测方法、装置、电子设备和计算机可读存储介质
CN112183045A (zh) * 2020-09-23 2021-01-05 北京字跳网络技术有限公司 在线文档处理方法、装置和电子设备
CN114143577A (zh) * 2021-11-26 2022-03-04 中国电信集团系统集成有限责任公司 一种视频获取方法及系统
CN114143577B (zh) * 2021-11-26 2023-10-24 中电信数智科技有限公司 一种视频获取方法及系统
CN115878676A (zh) * 2023-02-08 2023-03-31 成都数联云算科技有限公司 一种预览文件的方法、装置、设备和介质

Also Published As

Publication number Publication date
CN108574686B (zh) 2021-08-06

Similar Documents

Publication Publication Date Title
US11245770B2 (en) Locality based content distribution
CN108574686A (zh) 一种在线预览文件的方法及装置
US9888089B2 (en) Client side cache management
US6910077B2 (en) System and method for identifying cloaked web servers
KR100781725B1 (ko) 피어 투 피어 인가를 위한 방법 및 시스템
US9514243B2 (en) Intelligent caching for requests with query strings
CN104951480B (zh) 一种cdn系统中资源存储的索引装置及方法
US20090049171A1 (en) System and computer-readable medium for controlling access in a distributed data processing system
JP2000357176A (ja) コンテンツ索引付け検索システム及び検索結果提供方法
JP2010524132A (ja) ピア・ツー・ピア・ネットワーク関連のアプリケーションの共有情報リストを作成するシステム及びその方法
WO2007149914A2 (en) Method and system for incorporating trusted metadata in a computing environment
Patil et al. What can you learn from an IP?
WO2007149912A2 (en) Method and system for constructing and using a personalized database of trusted metadata
AU2008287031B2 (en) A method and system for tracking and optimizing advertisements on a decentralized network
US20090210944A1 (en) Anti-maleware data center aggregate
JP2005115453A (ja) ピア・ツウ・ピアネットワークにおける分散情報共有・検索方法及びそのシステム
Lee et al. Advanced node insertion attack with availability falsification in Kademlia-based P2P networks
US20240214460A1 (en) Locality based content distribution
Walfish Using DHTs to untangle the web from DNS
AU2012202691A1 (en) A method and system for tracking and optimizing advertisements on a decentralized network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant