天天看點

解決FlashFXP和FileZilla傳輸下載下傳檔案後出現代碼換行的問題

發生這種情況的原因是什麼呢?飄易就以一句話概括下: 由于linux下換行是\n,而windows下換行是\r\n,當ftp軟體在上傳時,預設是以ASCII方式上傳的,而ASCII方式上傳檔案有個特點,會将檔案裡的換行符進行适當處理以符合上傳伺服器的運作環境。在這個過程中,部分檔案就會處理不當,出現換行符丢失的bug。(注意,不是全部php檔案,是小部分的php檔案會出現這個問題)。

上訴問題尤其在php源碼裡有單行注釋符“//”時,會導緻php源檔案直接無法運作。因為源碼變成了一行代碼後,單行注釋符把//後面所有的代碼都注釋掉了。

解決問題的核心關鍵詞“二進制”

能造成代碼換行的問題其實是因為這兩款問題裡的傳輸模式導緻的,跟你的伺服器以及控制台是WDCP或者寶塔一點關系也沒有!

FlashFXP的解決步驟

  • 打開FlashFXP > 選項 > 參數選擇 > 傳輸 > 傳輸模式選擇“二進制(圖像)” > 應用and确定
    解決FlashFXP和FileZilla傳輸下載下傳檔案後出現代碼換行的問題

為了保全起見,把檔案傳輸規則(也在選項的下拉)裡的【隻有續傳檔案才以二進制模式傳輸】前的勾取消掉

解決FlashFXP和FileZilla傳輸下載下傳檔案後出現代碼換行的問題

FileZilla的解決步驟

  • 打開FileZilla,設定 > 傳輸 > FTP:檔案類型 > 預設傳輸模式 > 二進制(B) > 确定

    原先FileZilla是把這些重要檔案用ASCII 模式傳輸的,就會唇出現換行問題。

    解決FlashFXP和FileZilla傳輸下載下傳檔案後出現代碼換行的問題

FTP有ASCII和Binary(二進制)兩種傳輸模式:

Binary模式不會對資料進行任何處理。

Ascii模式會将回車換行轉換為本機的回車字元。

轉載位址:https://blog.csdn.net/WeilaPls/article/details/82185443