公司部署在服務器上的項目,上傳頭像功能以前一直沒有問題,突然上傳的圖片都打不開顯示不了,打開文件報系統文件錯誤,項目無報錯。
但是自己本地的項目運行起來上傳的圖片都沒有問題。排查問題後發現上傳過程中保存到本地的圖片文件都是正常的,上傳到ftp上後的文件損壞。
解決方案: 在創建ftpClient後設置ftpClient.enterLocalPassiveMode();
ftpServer可能每次開啓不同的端口來傳輸數據,可能因爲端口阻塞出現錯誤。這個方法的意思就是每次數據連接之前,ftpClient都會告訴ftpServer開通一個端口來傳輸數據。