ueditor上传无法新建目录解决方法

发表时间
评论 没有

近日一个项目用到ueditor,本地测试一切正常,上传服务器后上传文件显示无法新建目录,原来是php在iis中环境变量 $_SERVER['DOCUMENT_ROOT'] 获取有问题,读取是空值。翻阅了PHP的文档,发现对该变量的解释为:“当前运行脚本所在的文档根目录。在服务器配置文件中定义。”这才突然想到,Apache的配置文件里确实有 DocumentRoot 这一项,而IIS则没有这个配置文件。好吧,既然没有,那就值得用别的方式来“修复”IIS服务器了。把下面这段代码加到程序中,注意必须在你调用 $_SERVER['DOCUMENT_ROOT'] 之前哦!

if(empty($_SERVER['DOCUMENT_ROOT']) && !empty($_SERVER['SCRIPT_FILENAME'])) { 
    $_SERVER['DOCUMENT_ROOT'] = str_replace( '\\', '/', substr($_SERVER['SCRIPT_FILENAME'], 0, 0 - strlen($_SERVER['PHP_SELF']))); } 
if(empty($_SERVER['DOCUMENT_ROOT']) && !empty($_SERVER['PATH_TRANSLATED'])) { 
    $_SERVER['DOCUMENT_ROOT'] = str_replace( '\\', '/', substr(str_replace('\\\\', '\\', $_SERVER['PATH_TRANSLATED']), 0, 0 - strlen($_SERVER['PHP_SELF']))); }

具体到ueditor是php/Uploader.class.php中的 private function getFilePath() ,将以上代码添加到 $rootPath = $_SERVER['DOCUMENT_ROOT']; 前。

作者
分类 网站建设

评论

本文评论功能已关闭。

← 较早的 较新的 →

相关文章