安裝 ckfinder 的未知錯誤
基本上把 ckfinder 下載回來,解壓縮並部屬到 IIS 即可使用,但我安裝時卻發生不明錯誤,如下圖所示 :
通常解決問題的第一步,是想辦法找出明確的錯誤源才能清楚地解決錯誤。所以第一步,我先按 F12 查看錯誤請求是哪一隻程式 ( 看不出明確的錯誤)。
接下來,如果是 500 錯誤,主機的 Log 檔都會記錄下來,於是我查看了 IIS 的記錄檔,不過還是看不出什麼端倪。
最後索性在 ckfinder\App_Data\logs 下的 messages.log 找到如下的錯誤訊息 :
既然ckfinder的log檔都說是 "當檔案已存在時,無法建立該檔案" ,雖然不知道詳細原因,但第一個直覺,就是更換目錄或專案檔名試看看,於是問題就解決了。
最後 ckfinderAllowedRole 值需設定為'*'允許使用者瀏覽權限。
後記: 學習 .Net 這兩個月來,感覺很多問題都是被隱藏起來,然後莫名其妙的發生? 或許這就是被 MS 封裝得太深了,不像我以前寫 PHP ,幾乎所有的問題來源都可以精確的判斷。
通常解決問題的第一步,是想辦法找出明確的錯誤源才能清楚地解決錯誤。所以第一步,我先按 F12 查看錯誤請求是哪一隻程式 ( 看不出明確的錯誤)。
接下來,如果是 500 錯誤,主機的 Log 檔都會記錄下來,於是我查看了 IIS 的記錄檔,不過還是看不出什麼端倪。
最後索性在 ckfinder\App_Data\logs 下的 messages.log 找到如下的錯誤訊息 :
Fatal | CKSource.CKFinder.Connector.Core.CommandHandler | 2019-08-09 07:02:35.7427 | An unknown error has occured during execution of Init command.| System.IO.IOException: 當檔案已存在時,無法建立該檔案。
既然ckfinder的log檔都說是 "當檔案已存在時,無法建立該檔案" ,雖然不知道詳細原因,但第一個直覺,就是更換目錄或專案檔名試看看,於是問題就解決了。
最後 ckfinderAllowedRole 值需設定為'*'允許使用者瀏覽權限。
<add key="ckfinderAllowedRole" value="*" />
後記: 學習 .Net 這兩個月來,感覺很多問題都是被隱藏起來,然後莫名其妙的發生? 或許這就是被 MS 封裝得太深了,不像我以前寫 PHP ,幾乎所有的問題來源都可以精確的判斷。
留言
張貼留言