Roundcube 上傳附件出現 內部伺服器錯誤

先前有介紹過 「HestiaCP 架設自己專屬的電子郵件伺服器」這篇文章,平常只有使用文字或是手機進行收發文件。
直到某次需要使用電腦進行附件傳輸,當檔案丟上去時畫面中出現了 內部伺服器錯誤 server error,而且附件中並不會看到上傳的檔案,直到信件寄出後再次檢視就會發現檔案有夾帶成功,但相同的方式在平板和手機裝置並不會出現異常。

為了徹底解決這個方式最直接的方式就是修改程式碼!

首先透過SSH 開啟Linux , 針對 rcube_imap_generic.php 這支程式進行修改

nano /usr/share/roundcube/program/lib/Roundcube/rcube_imap_generic.php

接著找到下方這段程式碼

protected function closeSocket()
    {
        @fclose($this->fp);
        $this->fp = null;
    }

在程式碼中加入 if($this->fp){ }

protected function closeSocket()
    {
        if($this->fp){
        @fclose($this->fp);
        }
        $this->fp = null;
    }

最後再次測試附件上傳,這時就會發現不會出現Server error錯誤

關於作者 Roy

曾經北漂的工程師,現在專注於.Net Core、WordPress開發


發佈留言