Файлы повреждаются при загрузке FTP-клиента.
-
19-09-2019 - |
Вопрос
Я попробовал загрузить файлы на свой сервер
my.php (обычный локальный файл)
<?php
$box_title= "SEARCH ME"
?>
После загрузки через FTP-клиент FileZilla (файл удаленного сервера)
// SOMETIMES ABOVE FILE BECOMES
<?php$box_title= "SEARCH ME"?>
// OR SOMETIMES LIKE THIS
<?php
$box_title= "SEARCH ME"
?>
Я подозреваю, что это проблема, связанная с сервером, но не уверен.Может ли кто-нибудь объяснить эту проблему с решением
Спасибо
Решение
В приведенном выше комментарии уже предлагалось взглянуть на ASCII/двоичный режим.Это странное свойство FTP: файлы могут обрабатываться как текст ASCII (в этом случае передача FTP автоматически меняет кодировку концов строк в соответствии с кодировкой, используемой целевой машиной) или как двоичные файлы (в этом случае они будут переданы). без каких-либо изменений).
Увечье, о котором вы упомянули в своем вопросе, вероятно, не так ужасно, как кажется;некоторые редакторы на самом деле не отображают кодировку окончания строки в стиле UNIX (которую FTP в режиме ASCII, вероятно, помещает в ваши файлы), даже если она там есть.
Различные кодировки концов строк являются постоянным источником неприятностей в портативных компьютерах...в этом случае лучшее, что я могу порекомендовать, — это проверить, работает ли это так, как вы делаете сейчас, а если нет, попробуйте принудительно установить другой режим передачи вашего FTP-клиента.
Другие советы
Я бы хотел заплатить за это 0,02 доллара.
Как предположил Ян, это определенно проблема с передачей ASCII.
Однако я считаю, что такое поведение клиента FileZilla не является подходящим или ожидаемым.
Я переношу файлы Perl с клиента Debian Linux на сервер Debian Linux через SFTP (SSH).
FileZilla настроен на передачу файлов с расширением .pl в режиме ASCII, но это приводит к неправильному формату, который Иш Кумар отметил в исходном вопросе.
Текстовые файлы, передаваемые в режиме ASCII, должны передаваться из *nix в *nix так же хорошо, как и из Windows в *nix.
Я виню в этом Filezilla.