为什么80%的码农都做不了架构师?>>>   

环境:

fastdfs

nginx + ngx_fastdfs_module

php+fastdfs_php扩展

开启token令牌:

vi /etc/fdfs/http.conf

#开启

http.anti_steal.check_token=true

#密钥

http.anti_steal.secret_key=123456

重启nginx

php中,通过fastdfs_http_gen_token()函数生成$token,例如:

$ts=time();//当前时间戳
$token=fastdfs_http_gen_token('M00/00/00/Ss_0rVGSABmAEZ1QAAC6WE5-JkI695.zip',$ts);

然后url形如:

http://localhost/M00/00/00/Ss_0rVGSABmAEZ1QAAC6WE5-JkI695.zip?token=8de0e6554be69d0b9385faad654c4364&ts=1368589809

这样服务端就可以自动根据 token , ts ,以及设置的密钥来验证合法性。密钥过期时间在http.conf里设置。

问题:

token总是验证失败,需要检查如下:

1.fastdfs_http_gen_token($file_name,$timestmp);中$file_name 不要包含group_name

2.你是否忘记设置客户端对应的配置文件里,也有一个密钥,要求跟http.conf中的一直,比如php.ini中的fastdfs_client.http.anti_steal_secret_key参数。

3.检查你的fdfs服务器和client服务器时间不要相差分钟级。

转载于:https://my.oschina.net/cxz001/blog/131025

fastdfs 开启 token 防盗链,以及验证失败原因相关推荐

  1. fastdfs java token_fastdfs 开启 token 防盗链

    环境: fastdfs nginx + ngx_fastdfs_module php+fastdfs_php扩展 开启token令牌: vi /etc/fdfs/http.conf #开启 http. ...

  2. Token 防盗链详解

    前言 随着互联网的高速发展,无论是移动 APP 还是 WEB 站点,访问的安全问题始终困扰着内容提供商.CDN ( Content Delivery Network,内容分发网络 ) 服务作为当今互联 ...

  3. SRS 对接GB28181 token防盗链配置

    token防盗链:用户在播放时,必须先申请token,SRS会回调http检查这个token合法性. # push gb28181 stream to SRS.listen 1935; max_con ...

  4. 传奇服务器验证失败怎么回事,绝地求生从外部提供商处验证失败原因及解决方法推荐...

    绝地求生从外部提供商处验证失败是怎么回事?这样的问题相信许多的小伙伴们也都遇到了吧,怎么解决?很多玩家可能还不太清楚,下面小编为大家带来了绝地求生从外部提供商处验证失败原因及解决方法推荐,感兴趣的玩家 ...

  5. ATS中开启Refer防盗链功能

    ATS默认提供了对Referer头的http request的防盗链功能,主要应用于图片,对视频等会使用级别更高的防盗链功能,比如事先约定好key,采用md5或HMAC-Sha1算法加密等. 在rem ...

  6. 配置审计(Config)配合开启OSS防盗链功能

    简介:本文作者:紫极zj 本文将主要介绍利用[配置审计]功能,如何快速发现企业上云过程中,针对未配置防盗链的 OSS Bucket 定位及修复案例. 前言 配置审计(Config)将您分散在各地域的资 ...

  7. 微信Token验证失败原因及解决方案

    1.php文件编码问题 用NotPad++打开,是否为UTF-8无BOM编码格式,不是专为UTF-8无BOM编码格式 2.检查微信后台Token(令牌)前后是否有空格 有空格把空格去掉 3.检查微信后 ...

  8. 关于微擎公众号配置token验证失败原因

    微擎官方提示: 公众号时token验证失败的4个原因: 1.微擎是否更新到最新版. 2.站点下 站点设置中打开站点. 3.被云盾,防火墙等拦截. 4.临时域名不能使用(临时就是没有在运营商备案的域名) ...

  9. pdf.js在h5端访问图片服务器地址携带token防盗链无法读取问题,兼容安卓ios在线预览

    1.实现方法为前端代码和后台Java代码结合 1.后端代码 @Controller @RequestMapping("/productController") public cla ...

最新文章

  1. 阿里,腾讯,拼多多面试必挂:面对千万级、亿级流量怎么处理?
  2. 如何将四个一字节的数转换为一个四字节数
  3. ios多线程开发的常用三种方式
  4. 从零开始使用Realsense D435i运行VINS-Mono
  5. 剑指offer-跳台阶
  6. delphi的几个特别关键字 object absolute
  7. CORS 跨域-哪些操作不受同源限制
  8. 乱码问题产生的原因与解决方案---UTF-8
  9. Hanlp得到语义相似度的方法
  10. Oracle结构组成
  11. java - 建造者模式
  12. android:模拟水波效果的自己定义View
  13. python实现异步的原理_一篇文章理解Python异步编程的基本原理
  14. 用python简单处理图片(5):图像直方图
  15. HCSE设计知识点50个
  16. 【记录】非常实用,Python编码规范的一些建议(1)
  17. python图像色彩分析_使用OpenCV和Python计算图像的“色彩”
  18. 常见数据类型的API
  19. 手机内存卡应该叫外存卡
  20. 解决Android应用签名和系统不一致的问题

热门文章

  1. load data with matlab
  2. 苹果手机怎么投屏 如何操作
  3. CSS5:移动端页面(响应式)
  4. 简单定制自己的Centos系统(第三版)
  5. Spring MVC集成slf4j-logback - 我想跟代码谈谈 - 博客频道 - CSDN.NET
  6. AngularJS之动态菜单操作指令
  7. 《Web接口开发与自动化测试 -- 基于Python语言》 ---前言
  8. c# 实现 加减乘除
  9. Netty之粘包问题解决
  10. Java BitSet使用场景和示例