免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2233 | 回复: 7
打印 上一主题 下一主题

[FastDFS] 测试,打开steal,总是400错误 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-10-26 11:59 |只看该作者 |倒序浏览
<?php

$ts=time();
$sKey='FastDFS1234567890';
$fileID='group1/M00/00/03/AQAAf0rlDkYAAAAAAAABqhHQ5qM8.conf';
$token=md5($fileID.$sKey.$ts);

echo "http://127.0.0.1:8081/".$fileID."?ts={$ts}&token={$token}";
?>

是token生成有问题吗?

论坛徽章:
0
2 [报告]
发表于 2009-10-26 14:05 |只看该作者
打印了一些日志,发现MD5的结果好像不一致

group1/M00/02/05/AQAAf0rlNQQAAAAAAAABqgWFXpI9.confFastDFS12345678901256535445

这个字符串通过 fdfs_http_gen_token  生成的md5   ccd03cd8b952b9643bd1bb3b6990b5bc


php的md5函数是 82d955001f9c2a57be7e442aa89f9ea7

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
3 [报告]
发表于 2009-10-26 16:16 |只看该作者

回复 #2 nksurvive 的帖子

fdfs_get_token调用的也是php的md5函数,不应该出现相同的输入,而输出不一致的情况。
你两个帖子中的$fileID是不一致的。
另外,请注意$ts取的当前时间戳,每次取到的可能也不一样。

论坛徽章:
0
4 [报告]
发表于 2009-10-26 17:08 |只看该作者
用time取当前值生成下载地址
http://localhost:8888/group1/M00/02/05/AQAAf0rlNQQAAAAAAAABqgWFXpI9.conf?ts=1256535445&token=82d955001f9c2a57be7e442aa89f9ea7

在  fdfs_http_gen_token    增加日志
打印md5 前后的值

前: group1/M00/02/05/AQAAf0rlNQQAAAAAAAABqgWFXpI9.confFastDFS12345678901256535445  是正确的
后: ea78a22ab726794dfc8311fdccd0a3cc


和url中的 82d955001f9c2a57be7e442aa89f9ea7 不一致。
下载提示400错误。

所以上来问一下

论坛徽章:
0
5 [报告]
发表于 2009-10-26 17:10 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
6 [报告]
发表于 2009-10-26 17:39 |只看该作者
wget "http://127.0.0.1:8081/group1/M00/02/05/AQAAf0rlNQQAAAAAAAABqgWFXpI9.conf?ts=1256549699&token=7822c0d3a796bc5193fdb0c2ee25cfe7"



[2009-10-26 17:38:19] ERROR - >>>file: ../common/fdfs_http_shared.c, line: 294, fileid is:  group1/M00/02/05/AQAAf0rlNQQAAAAAAAABqgWFXpI9.conf  
[2009-10-26 17:38:19] ERROR - >>>file: ../common/fdfs_http_shared.c, line: 305, origninal string: group1/M00/02/05/AQAAf0rlNQQAAAAAAAABqgWFXpI9.confFastDFS12345678901256549699 ,before md5encode
[2009-10-26 17:38:19] ERROR - >>>>>file: ../common/fdfs_http_shared.c, line: 310, md5Encoded string: 3f467cbee31f1ec9097f1997c293ade6  after md5encode
[2009-10-26 17:38:19] ERROR - >>>file: ../common/fdfs_http_shared.c,line: 338, token: 7822c0d3a796bc5193fdb0c2ee25cfe7 ,true_token: 3f467cbee31f1ec9097f1997c293ade6

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
7 [报告]
发表于 2009-10-26 22:12 |只看该作者

回复 #6 nksurvive 的帖子

你机器是64位的吧?我在64位系统下进行了测试,和你描述的情况完全一样。
common/md5.h中的typedef unsigned long int UINT4; 在64位下存在问题,已经修复。
修改为:typedef unsigned int UINT4; 即可。

谢谢LZ的反馈!

[ 本帖最后由 happy_fish100 于 2009-10-27 09:07 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2009-10-27 13:41 |只看该作者
不好意思,没有告诉你环境。我的服务器是64位的。

谢谢斑竹解答。

测试通过...hh
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP