当前位置:首页 >> 网络编程

ueditor编辑器不能上传图片问题的解决方法

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

上传的问题即可得到解决。