Pirms uzticēties augšupielādei pārbaudiet galīgo FTP atbildi
Atbilde 150 nozīmē, ka pārsūtīšana sākās, nevis ka fails ir saglabāts. Atdaliet vietējo lasīšanu, glabāšanas atļauju, datu savienojumu un galīgo atbildi.
FTP klients var pieņemt put komandu ilgi pirms tam, kad serveris ir saņēmis failu, un tieši starpā starp šiem diviem notikumiem dzīvo lielākā daļa augšupielādes noslēpumu. Jāpabeidz četri posmi: tiek nolasīts vietējais fails, serveris pieņem glabāšanas pieprasījumu, datu savienojums pārnes baitus un pārsūtīšana sasniedz galīgo pozitīvo atbildi. Posmu salīdzināšana ir lietderīgāka par klientu salīdzināšanu, jo strādājoša pieteikšanās un parādījies faila nosaukums abi apstājas pirms finiša.
Sākotnējā atbilde pret galīgo atbildi
STOR gadījumā atbilde 125 vai 150 ir sākotnēja. Tā saka, ka serveris ir gatavs mēģināt un ka tiek atvērts datu savienojums, nevis ka objekts pastāv galīgajā formā. Darbība tiek pabeigta tikai tad, kad pārsūtīšana sasniedz pozitīvu pabeigšanas atbildi, parasti 226 vai 250, šīs darbības kontekstā.
426 nozīmē, ka pārsūtīšana tika pārtraukta, un citas komandas izdrukāts skaitlis nav šīs augšupielādes rezultāts. Lasiet atbildi, kas pieder STOR, nevis pēdējo skaitli ekrānā. Ja klients iziet pirms šīs atbildes saņemšanas, jums nav nekādu pabeigšanas pierādījumu.
Vadības savienojums pret datu savienojumu
Autentifikācija un direktorija saraksts izmanto vadības savienojumu. Baiti izmanto atsevišķu datu savienojumu, un tā galapunkts tiek saskaņots katram pārsūtīšanas gadījumam. Veiksmīga pieteikšanās pierāda vadības ceļu un neko nesaka par to, vai datu adrese ir sasniedzama no klienta.
Kad serveris nevar atvērt datu savienojumu, izpētiet saskaņoto galapunktu un atļauto ceļu. Pasīvais režīms joprojām prasa lietojamu datu adresi un portu, un ugunsmūris vai NAT ierīce starp klientu un serveri var atļaut vadības sesiju, vienlaikus bloķējot datu diapazonu. Ja serveris tā vietā noraida glabāšanas pieprasījumu, apskatiet attālināto ceļa nosaukumu, atļaujas vai glabāšanas ierobežojumus. Neviens no diviem zariem nav izskaidrojams ar to, ka vadības savienojums tika autentificēts.
FTP virs TLS pret SFTP
FTP virs TLS joprojām ir FTP: divi savienojumi, FTP atbildes un TLS jauninājums katrā. SFTP ir SSH apakšsistēma ar vienu savienojumu un pavisam citu komandu kopumu. Viņi dala mērķi un gandrīz neko citu, tāpēc diagnostika, kas pāriet starp tiem, parasti sākas ar nepareizo žurnālu salīdzināšanu.
Neizslēdziet TLS, lai starpnieks varētu apskatīt sesiju, un neuzskatiet SFTP kļūmi par FTP atbilžu problēmu. curl rokasgrāmata dokumentē skaidru TLS, pasīvo režīmu un augšupielādes opcijas, ja jums nepieciešams skripta tests, un tā ir atsauce uz to, ko katra opcija patiešām maina.
Pirms atkļūdošanas izvēlieties protokolu, ko pakalpojums patiešām piedāvā. Serveris, kas runā tikai SFTP, nekad nesniegs atbildi 226, lai klients būtu konfigurēts kā vien grib.
Redzams faila nosaukums pret saglabātu objektu
Redzams faila nosaukums var attēlot nepilnīgu objektu, jo īpaši pēc pārtrauktas pārsūtīšanas vai pārāk agri izgājuša klienta. Lūdziet pakalpojuma īpašniekam salīdzināt paredzētā testa faila lielumu un uzticamo satura jaucējvērtību ar saglabāto objektu, kad tiek gaidīta baitu saglabāšana.
Binārais un ASCII režīms ir vēl viens salīdzinājums, kas maina rezultātu. ASCII režīms var pārveidot rindu beigas, tāpēc saglabātie baiti atšķiras no vietējā faila, lai gan pārsūtīšana bija veiksmīga. Saglabājiet bināro režīmu baitu pa baitam pārbaudei un nepievienojiet pārveides opcijas, lai neveiksmīga pārsūtīšana izskatītos citādi.
Parasts STOR var aizstāt esošu failu, un atļauja pieteikties vai uzskaitīt direktoriju nepiešķir atļauju tajā izveidot vai aizstāt objektu. Testam izmantojiet iepriekš neizmantotu attālinātu nosaukumu.
Ko salīdzināt pirms atkārtota mēģinājuma
Nepievienojiet, neturpiniet un neatkārtojiet augšupielādi akli uz nedroša daļēja faila. Vienojieties ar īpašnieku, vai sākt no jauna ar jaunu nosaukumu, izmantot pakalpojuma atbalstīto atjaunošanas procedūru vai noņemt neveiksmīgo testa objektu.
Pierakstiet rezultātu kā vienu no četriem apgalvojumiem: vietējā lasīšana neizdevās, glabāšana tika atteikta, datu pārsūtīšana tika pārtraukta, vai pārsūtīšana tika pabeigta un saglabātie baiti sakrita. Šis ieraksts ir spēcīgāks rezultāts nekā mainīt apvalku, VPN un FTP iestatījumus vienlaikus, līdz parādās faila nosaukums, un tas pasaka nākamajam cilvēkam, kuru posmu pārbaudīt. Glabājiet attīrīto atbildes tekstu kopā ar šo apgalvojumu. Tad atkārtots mēģinājums ir lēmums, nevis reflekss.