ueditor是百度编辑器,在本地的iis环境是可以上传图片了,但放在服务器的iis环境无法上传图片了,经过搜索发现是iis设置问题,引起这个问题的主要原因是,大多数虚拟主机不会给iis匿名账号访问磁盘上的非用户目录,连读取的权限都没有,既然我们不能解决iis问题只有从代码设置了,具体如下。
在上传不了图片时,可以用浏览器的自带的调试工具查看报错,你可以看一个“拒绝访问或文件已存在”的错误。仔细调试分析,终于找到问题所在。
在它的upload.class.asp中,有如下一个函数:
private function checkorcreatepath( byval path ) set fs = server.createobject("scripting.filesystemobject") dim parts parts = split( path, "\" ) path = "" for each part in parts path = path + part + "\" if fs.folderexists( path ) = false then fs.createfolder( path ) end if next end function
将其修改如下:
private function checkorcreatepath( byval path ) set fs = server.createobject("scripting.filesystemobject") dim parts dim root : root = server.mappath("/") & "\" 'parts = split( path, "\" ) parts = split( replace(path, root, ""), "\" ) 'path = "" path = root for each part in parts path = path + part + "\" if fs.folderexists( path ) = false then fs.createfolder( path ) end if next end function
上传的问题即可得到解决。
发表评论