前幾天給客戶做的一個網站,今天突然找我說不能上傳圖片了。期間并沒有修改什么設置和配置,突然就不能用了。如圖:單圖上傳為灰色,多圖上傳提示 后端配置項沒有正常加載,上傳插件不能正常使用!

控制臺報錯如下圖:

在網上查了一些資料,總結出一下幾種方法。
第一種:修改服務器路徑 保存UTF-8格式
把config.json 文件中的
"imageUrlPrefix": "http://localhost:8080/xxxx", /* 圖片訪問路徑前綴 */
localhost要改成服務器的ip的地址!
PS:config.json 文件中所有的/* 圖片訪問路徑前綴 */默認是空,要寫成"http://服務器ip:8080/項目名" 這種格式的
保存的格式必須是UTF-8,或者你需要的格式。
第二種:修改路徑
把路徑改一下 URL = "/ueditor/";//這里你可以配置成ueditor目錄在您網站的相對路徑或者絕對路徑(指以http開頭的絕對路徑)
第三種:設置時區
百度Ueditor 開發的一個疏忽導致的, 因為很多正式環境對大小寫敏感。 打開ueditor下的php/controller.php,(其他環境選對應的文件夾)把時區設置按如下改個字母大小寫,再打開該文件就正確返回json。
然后,ueditor就不會報“后臺配置項沒有正常加載,上傳插件將不能正常使用!”了 原來設置的是: date_default_timezone_set("Asia/chongqing"); 把重慶的首字母改成大寫,就可以了: date_default_timezone_set("Asia/Chongqing");
但是以上方法并沒有解決我的問題,繼續排查!
我的是php的程序,找到 /ueditor/ueditor.config.js 發現它的 ROOT 地址

訪問該地址,提示:
Warning: set_time_limit() has been disabled for security reasons in .../lib/default/ueditor_act.php on line 15{"state":"u8bf7u6c42u5730u5740u51fau9519"}
意思大概是:出于安全原因,set_time_limit()已被禁用。請求地址出錯
報錯位置在 /lib/default/ueditor_act.php 第15行,找到該文件,發現并沒有什么錯誤。

那么問題就在:set_time_limit() has been disabled for security reasons 了。
最終發現問題所在,是服務商主機的 php.ini 配置問題,默認禁用了 set_time_limit() ,聯系主機服務商,啟用 set_time_limit函數 問題解決。
人生中處處充滿了坑,只有不斷的去踩坑,才能陷得更深。。。
轉載自:https://cloud.tencent.com/developer/article/1538431