Meine Antwort vs. OPs Antwort
Ich schreibe diese Antwort, wenn die Lösung bereits von OP gefunden wurde. Das Ziel meiner Antwort ist zu erklären, was das Problem war, um zukünftigen Benutzern mit ähnlichen Problemen zu helfen. Die vorhandene Antwort gibt eine Lösung, aber keine Einsicht. Das ist die Antwort:
Die Lösung bestand darin, den Übertragungstyp von Auto auf Binär zu ändern.
Übertragen-Menü> Übertragungstyp> Binär
Problemhintergrund: ASCII vs. binär
Wie ich (in meinem Kommentar zu der Frage) vermutete, war das Problem ein Konflikt mit der Übersetzung der Zeilenenden. Das FileZilla Wiki behandelt das Thema. Dies sind die relevanten Fragmente (alle folgenden Zitate stammen von dort, einige Phrasen werden von mir zusätzlich hervorgehoben ):
Dateien können auf verschiedene Weise zwischen einem FTP-Client und einem Server übertragen werden. Die FTP-Spezifikation (RFC 959) nennt sie "Datentyp" (...)
Die verschiedenen Datentypen sind:
- ASCII
- binär
- (...)
ASCII-Typ wird zum Übertragen von Textdateien verwendet. Das Problem bei Textdateien ist, dass verschiedene Plattformen unterschiedliche Arten von Zeilenenden haben. Microsoft Windows verwendet beispielsweise ein CR + LF-Paar (Wagenrücklauf und Zeilenvorschub), während Unix-Systeme (einschließlich Linux und MacOS X) nur LF und herkömmliche MacOS-Systeme (MacOS 9 oder älter) nur CR verwenden. Der Zweck des ASCII-Typs besteht darin, sicherzustellen, dass die Zeilenenden richtig an der rechten Seite der Plattform geändert werden. Gemäß der FTP-Spezifikation werden ASCII-Dateien immer mit einem CR + LF-Paar als Zeilenende übertragen.
Falls die Datei vom Client zum Server übertragen wird, muss der Client sicherstellen, dass CR + LF verwendet wird. (...)
Das Gleiche passiert, wenn eine Datei vom Server auf den Client heruntergeladen wird: Der Server stellt beim Senden der Datei sicher, dass die Zeilenenden CR + LF sind, und der Client entfernt dann alles, was nicht als Zeilenende auf seiner Plattform benötigt wird.
(...)
Verglichen mit dem ASCII-Typ ist der binäre Typ der einfachere: Die Datei wird nur so übertragen, wie sie ist, und es wird keine Zeilenendeübersetzung durchgeführt.
Was ist passiert?
Eines der Beispiele, wenn etwas schief geht, stimmt mit dem Fall des OP überein. Ich denke, das ist was passiert ist:
Eine Windows-Textdatei (CR + LF) wurde binär auf einen Unix-basierten FTP-Server hochgeladen. Wenn diese Datei in ASCII heruntergeladen wird, übersetzt der FTP-Server LF in CR + LF, sodass die Zeilenenden der CR + LF-Zeilen in CR + CR + LF konvertiert werden. FileZilla unter Windows erwartet, dass die Datei bereits CR + LF-Zeilencodierung verwendet (per FTP-Spezifikation), sodass keine weitere Übersetzung erfolgt. Abhängig vom verwendeten Texteditor können Zeilen jetzt durch eine zusätzliche leere Zeile getrennt werden.
Lösung
Die Lösung des OP besteht darin, den Transfer-Typ von Auto zu Binär zu ändern, beginnend mit dem Transfer- Menü. Der Artikel bietet auch andere Möglichkeiten, dies zu ändern:
Sie können den Übertragungsdatentyp auf drei Arten mit FileZilla ändern:
- In den Einstellungen von FileZilla
- Im Hauptmenü unter Transfer -> Transferart
- Klicken Sie mit der rechten Maustaste auf das Datentypkennzeichen in der Statusleiste von FileZilla.
Herstellung von binären die Standardoption in Windows, um die Situation führen kann, wenn .css
oder .php
oder andere Textdatei von Nicht-Windows - System heruntergeladen wird mit einzelnen LF oder CR anstelle von Windows-spezifischer CR + LF gespeichert werden. Es kann kein Problem sein, wie in einem anderen Fragment erläutert:
Wenn Sie sich nicht sicher sind, was Sie verwenden sollen, sollten Sie immer den binären Typ wählen. Heutzutage können fast alle (guten) Texteditoren die drei möglichen Zeilenenden verarbeiten, und andere Textdateien wie Skriptsprachen wie Perl oder PHP sowie XML-Dateien arbeiten (fast) immer mit jedem Zeilenende.
Diese Lösung kann in vielen Fällen die beste sein, da die Übertragungsart immer geändert werden kann.
Alternative Lösung
Der Fragentitel legt nahe, dass zusätzliche Zeilen von der FileZilla des OP erstellt wurden. Es stimmt nicht, es war nichts falsch mit der FileZilla-Konfiguration von OP. Dieses Problem tritt auf einer Serverseite auf, wo Textdateien vorhanden sind, deren Zeilenenden das Server-Betriebssystem nicht übereinstimmen. Die oben genannte Lösung ist nur eine clientseitige Lösung für das serverseitige Problem .
Die alternative Lösung besteht darin, die Dateien (ihre Zeilenenden) auf der Serverseite festzulegen, sodass die ASCII-Übertragung so funktioniert, wie sie eigentlich sein sollte. Dies ist offensichtlich das Richtige und kann als die beste Lösung bezeichnet werden - in gewissem Sinne: weil es sich um die Wurzel des Problems handelt. Berücksichtigen Sie diese Lösung, wenn Sie den Server verwalten oder wenn Sie sich an den Administrator wenden können oder wenn Sie die Berechtigung zum Überschreiben der falsch formatierten Datei haben. Davon profitieren auch andere Benutzer.
Auch wenn Sie sich an den Administrator wenden, ist es meiner Meinung nach immer schneller, den Übertragungstyp zu ändern und die gewünschte Datei herunterzuladen, anstatt auf die Änderungen auf der Serverseite zu warten.