FTP Ascii Transfer - возвращает ли клиент или сервер возврат каретки?
У меня проблема с переносом файлов ascii с компьютера под управлением Windows 7 на сервер Unix Solaris с использованием FileZilla 3. Проблема заключается в том, что текстовые файлы на компьютере Unix заканчиваются символами CR+LF, а не просто символом LF, что приводит к странным результатам символы в конце каждой строки.
Я понимаю проблему - символ ЧР должен быть удален. Мои вопросы довольно специфичны: клиент или сервер должны раздеть этого персонажа?
На этой странице fileZilla говорится, что дело в том, что ascii файлы всегда передаются с CR+LF, и клиент должен убедиться, что это произойдет. Затем сервер должен преобразовать его в собственный формат хост-машины, в данном случае Unix, поэтому он должен удалить символы CR.
Однако у меня не было этой проблемы с использованием WS_FTP, и мне любопытно, является ли страница FileZilla просто неверной, или если WS_FTP нарушает соглашение RFC для FTP и фактически передает файл без символа CR. Также возможно, что FileZilla верна, и проблема в FTP-сервере на Unix-машине.
Еще раз: нужно ли клиенту или серверу FTP конвертировать файлы ascii в правильный формат перевода строки?
1 ответ
Из RFC:
Конец линии
The end-of-line sequence defines the separation of printing lines. The sequence is Carriage Return, followed by Line Feed.
Протокол не указывает, что должно храниться в конце сеанса FTP на клиенте или сервере, только то, как должен выглядеть сеанс.