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
上傳的問題即可得到解決。
新聞熱點
疑難解答