免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: xuexifdfs
打印 上一主题 下一主题

[FastDFS] 上传文件问题,请教版主 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2009-11-03 21:49 |只看该作者

回复 #10 happy_fish100 的帖子

版主你好,我是这样测试的:
1、写一个文件添加界面file_add.php,通过HTML中的form表单提交的形式选择需要上传的文件,即<input type="file" name="filename" />
2、修改fdfs_test.php的代码,只留下按文件名上传的一部分代码作为file_upload.php。
    file_upload.php中$local_filename采用$_FILES['filename']['name']的方式从file_add.php处获取
3、执行file_add.php,选择文件并点击提交,转而执行file_upload.php的代码,进而测试文件上传操作

结果就是我上面说的20K以下的文件可以上传,大于20K的文件传不了,提示错误就是:
Warning: stat() [function.stat]: stat failed for 200908.rar in /home/node01/Desktop/fastdfstest/fdfs_storage_client.php on line 626
storage_upload_by_filename fail, result=5
tracker_query_storage_list fail, errno: 22


请问版主你使用的什么方式进行测试?
你使用的脚本文件是fastdfs_client_php_v1.6\FastDFS\fdfs_test.php文件?

[ 本帖最后由 xuexifdfs 于 2009-11-3 22:46 编辑 ]

论坛徽章:
0
12 [报告]
发表于 2009-11-03 22:05 |只看该作者
我的file_upload.php代码如下:
<?php
require 'fdfs_common.php';
require 'fdfs_tracker_client.php';
require 'fdfs_storage_client.php';

$tracker_server = tracker_get_connection();
if ($tracker_server == false)
{
        echo "tracker_get_connection fail\n";
        exit(1);
}
$storage_server = null;
$local_filename = 'xxxxxxxx';单独执行file_upload.php时,这里手动给定一个文件名(我尝试过800M的文件),是可以上传的
$group_name = '';   //you can specify the group to upload file to
$meta_list = array('width' => 1024, 'height' => 768, 'color' => '#c0c0c0');
$result = storage_upload_by_filename($tracker_server, $storage_server, $local_filename, $meta_list, $group_name,$remote_filename);
。。。。。。以下省略
?>

但是先执行file_add.php选择准备上传的文件,然后点执行,转而执行file_upload.php,通过$_FILES['filename']['name']将文件名传递给$local_filename时,就只能上传小于20K的文件,文件大了就提示我前面描述的问题。错误定位到了
fdfs_storage_client.php on line 626
storage_upload_by_filename fail, result=5

[ 本帖最后由 xuexifdfs 于 2009-11-3 22:27 编辑 ]

论坛徽章:
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
13 [报告]
发表于 2009-11-04 09:32 |只看该作者

回复 #11 xuexifdfs 的帖子

我的确是通过自带的那个php测试脚本进行测试的。
网页中进行测试,对于大文件,首先要看php和apache是否支持这么大的文件。
另外,上传完成后,在php程序中看一下接收到的临时文件是否建立并且正确。
即先检测一下文件$_FILES['filename']['name']是否ok。

论坛徽章:
0
14 [报告]
发表于 2009-11-04 15:57 |只看该作者

回复 #13 happy_fish100 的帖子

版主你好,的确像你说的,使用自带的php测试脚本进行测试是可以上传大文件的。

估计我遇到的问题是在网页中上传的问题,不是程序本身的问题。我再继续研究一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP