V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
牛客网
odoooo
V2EX  ?  Lua

正在用 lua 写一个 nginx 防盗链的拓展,遇到了一个问题。

  •  
  •   odoooo · 2016-05-22 17:32:32 +08:00 · 6155 次点击
    这是一个创建于 1617 天前的主题,其中的信息可能已经有所发展或是发生改变。

    腾讯云最新优惠活动来了:云产品限时1折,云服务器低至88元/年 ,点击这里立即抢购:9i0i.cn/qcloud,更有2860元代金券免费领取,付款直接抵现金用,点击这里立即领取:9i0i.cn/qcloudquan

    (福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

    大概流程是这样

    web 应用层,

    md5(IP.文件路径.其他固定信息如 UA 啥的) 存进 redis ,并作为 url 中的 hash 。

    nginx 里, ngx.md5(IP.文件路径.其他固定信息如 UA 啥的)对比连接中的 hash 并读取 redis 查到时间戳。

    判断时间戳是否失效。

    现在想吧 UID 也放进去,不知道有什么好方法能做到避免伪造和验证用户是否登录。只有给 nginx+lua 写 cookie+session 来验证吗?

    nginx.lua 上面不方便读 MySQL 数据库的~~.

    谢谢诸位,

    5 条回复  ?  2016-05-22 19:54:29 +08:00
    LazyZhu
        1
    LazyZhu   2016-05-22 17:42:01 +08:00
    odoooo
        2
    odoooo   2016-05-22 17:44:02 +08:00
    @LazyZhu 谢谢回复,这个看了,不想用 MySQL 。。。难道只有 cookie+session 了么。。。
    nealfeng
        3
    nealfeng   2016-05-22 17:51:31 +08:00
    也许可以用:
    X-Accel-Redirect 在 web 层做判断
    binux
        4
    binux   2016-05-22 18:17:32 +08:00
    对 UID 签名
    fcicq
        5
    fcicq   2016-05-22 19:54:29 +08:00
    明明早就有 ngx_http_secure_link_module 了不是吗? 用户拿到链接必然就只能假定他能够拿到文件了, 盗链过强意义不大
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4881 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 16ms · UTC 02:00 · PVG 10:00 · LAX 19:00 · JFK 22:00
    ? Do have faith in what you're doing.


    http://www.vxiaotou.com