sae 的sdk中文件名过滤的bug

  • 不应该使用fnmatch();函数来做匹配,该函数在windows上不支持,目前非posix的系统上都不支持;修改为使用preg_match;修改_sdk_internal/core.function.php 中函数: VisitFilesByPath
        
 
  1. if(preg_match("/$ext/",basename($filename)))
  • 在am.exe中的命令执行时,吊起upload方法时的参数有问题,没有把 -i 参数传进去,导致设置的扩展名过滤都没起作用
  • 我们可以在_sdk_internal/deploy.php中直接读取配置文件如下:
 
  1. $arrConf = parse_ini_file(dirname(dirname(__FILE__))."/sdk.ini",true);
  2. if($arrConf["SETTING"]["file_filter"])
  3.   {
  4. $ignore = explode("|"$arrConf["SETTING"]["file_filter_extname"]);
  5.   }

     注意: 配置文件中写正则表达式需要用双引号,否则解析不出来哦:

 
  1. file_filter_extname="~$|\.bak$|^tags$"
  •   _sdk_internal/core.function.php 中的递归函数VisitFilesByPath写的有问题;递归调用的时候没有把最后一个参数(ext_filter)传进去,自己加上吧
  1. VisitFilesByPath($filename,$files,$with_md5, $ext_filter);

给sae的sdk找这错误,以后千万不要做这种事情了,好恶心!!!!!!!!
主要是我自己在用,如果不是感觉用着恶心,我才懒得看呢。。。。

留下评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据