小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

FTP中Binary二進(jìn)制與ASCII傳輸模式的區(qū)別

 悟空Dad 2019-02-16

FTP可用多種格式傳輸文件,通常由系統(tǒng)決定,大多數(shù)Linux/UNIX系統(tǒng)只有兩種模式:文本模式和二進(jìn)制模式。文本傳輸器使用ASCII字符,并由回車鍵和換行符分開(kāi),而二進(jìn)制不用轉(zhuǎn)換或格式化就可傳字符,二進(jìn)制模式比文本模式更快,并且可以傳輸所有ASCII值,所以系統(tǒng)管理員一般將FTP設(shè)置成二進(jìn)制模式。 
一般來(lái)說(shuō): 如果你用錯(cuò)誤的模式傳輸你的圖片,你將可能無(wú)法看到圖片,看到的會(huì)是亂碼。 如果你用錯(cuò)誤模式上傳CGI腳本,那么就將無(wú)法運(yùn)行你的腳本,會(huì)看到類似Server 500 Error的出錯(cuò)信息。 
所以你必須使用正確的模式,圖片和執(zhí)行文件必須用BINARY模式,CGI腳本和普通HTML文件用ASCII模式上傳。

ASCII和BINARY模式區(qū)別:

用HTML和文本編寫的文件要用ASCII模式上傳,用二進(jìn)制模式上傳會(huì)破壞文件,導(dǎo)致文件執(zhí)行出錯(cuò)。 
BINARY模式用來(lái)傳送可執(zhí)行文件,壓縮文件和圖片文件。 
如果你用ASCII模式傳,可能會(huì)顯示一堆亂碼,你必須重新用BINARY模式傳。 
對(duì)于第二種情況,是因?yàn)橛泻芏鄁tp服務(wù)器和FTP軟件能自動(dòng)識(shí)別文件類型,并采取相應(yīng)的傳輸方式。 
FTP是應(yīng)用層協(xié)議,和具體操作系統(tǒng)無(wú)關(guān)。

ASCII模式和BINARY模式的區(qū)別是回車換行的處理,binary模式不對(duì)數(shù)據(jù)進(jìn)行任何處理,ASCII模式將回車換行轉(zhuǎn)換為本機(jī)的回車字符,比如Unix下是\n,Windows下是\r\n,Mac下是\r 
ascii模式下會(huì)轉(zhuǎn)換文件 
不能說(shuō)是不同系統(tǒng)對(duì)回車換行解釋不同 
而是不同的系統(tǒng)有不同的行結(jié)束符 
unix系統(tǒng)下行結(jié)束符是一個(gè)字節(jié),即十六進(jìn)制的0A 
而ms的系統(tǒng)是兩個(gè)字節(jié),即十六進(jìn)制的0D0A

所以當(dāng)你用ascii方式從unix的ftp server下載文件時(shí)(不管是二進(jìn)制或者文本文件),每檢測(cè)到一個(gè)字節(jié)是0A,就會(huì)自動(dòng)插入一個(gè)0D,所以如果你的文件是二進(jìn)制文件比如可執(zhí)行文件、壓縮包什么的,就肯定不能用了。如果你的文件就是unix下的文本文件,你用 ascii模式是正確的,要是誤用了binary模式,你在windows上看這個(gè)文件是沒(méi)有換行的,里面是一個(gè)個(gè)的黑方塊。

一般來(lái)說(shuō),我們最好都用binary方式,這樣可以保證不出錯(cuò)。如果有文本格式轉(zhuǎn)換的問(wèn)題,即unix格式的文本和dos格式的文本之間的轉(zhuǎn)換,有很多工具可以做的,不要在ftp傳輸?shù)臅r(shí)候冒險(xiǎn),尤其是你如果對(duì)這些東西不是非常清楚的話。 
可以使用MIME,把所有的字符,轉(zhuǎn)換成0~128之間的字符,然后傳送,在接受方再將接收到的字符MIME反向轉(zhuǎn)換。通常我們發(fā)送郵件,就是使用這樣的字符轉(zhuǎn)換方式 
補(bǔ)充:文本模式和二進(jìn)制模式傳文本文件的具體區(qū)別可以通過(guò)在linux下使用cat -A 文件名看到兩者的區(qū)別,當(dāng)然前提是在windows下上傳的文本為dos格式,這個(gè)可以用高級(jí)的文本編輯器看如ultraedit等。兩者的區(qū)別是二進(jìn)制模式上傳的文本比文本模式多一個(gè)^M符號(hào),這個(gè)就是windows下dos格式的/r回車符號(hào),也就是上面提到的十六進(jìn)制的0D,在vi下使用全局替換:%s/^M//g[^M使用Ctrl+V+M而不是直接輸入^M]去掉所有的回車符或者使用dos2unix file進(jìn)行轉(zhuǎn)換,這樣保存后或者生成后的文件就和文本模式上傳的文件一樣了。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多